Catégories:
Bonjour,
J’aimerai redéfinir la finction de validation de l’email valid_email_address($mail) du fichier includes/common.php sans devoir toucher au core de Drupal, est ce possible ?
Je peux très bien crée un module et crée mon propre validateur, cependant certains modules contrib et modules du core de drupal utilisent la fonction du core.
Si je modifie la finction du core, ce qui n’est pas propre du tout, je devrais reporté le smodifs pour les mis à jour ce qui sera bien pénible.
Merci
- Vous devez vous identifier ou créer un compte pour écrire des commentaires

S’il s’agit juste d’UN formulaire à valider «autrement», tu as le hook_form_alter (quitte à dupliquer/écraser un validateur existant).
Si ta redéfinition est une correction à utiliser de manière générale dans le site, le mieux est de créer une anomalie sur drupal.org pour qu’elle soit ensuit déployée dans les prochaines version.
Enfin s’il s’agit d’un comportement général mais qui t’es totalement spécifique, contrairement aux mythes et croyance, redéfinir une fonction du core n’est pas diabolique (personne ne te brulera, tout ça ;-). La seule astuce pour éviter d’avoir à maintenir de manière trop complexe ce genre de modification est de garder le code d’origine entre des balises de commentaire
/* Modification parce que...function truc() {
...
}
*/
function truc() {
...
}
Avec cette syntaxe, si tu utilises des mises à jour du cœur de drupal par patch (créer un fichier patch entre version source et version cible, puis en l’appliquant à ton site),tu ne devrais pas avoir de problèmes. C’est une technique que j’utilise régulièrement pour upgrader des sites construit par des sociétés qui prônent le «don’t hack the core» juste dans les conférences Drupal ;-)
Yoran - arNuméral
Yoran
1039
Ok donc il faut bien hacker le core, pas d’autre solution plus propre.
Merci en tout cas pour ta réponse :)
gaya
42