2012-07-23 4 views
0

J'ai écrit un module drupal. Une des fonctions du module est une fonction hook qui a un nom de fonction de la forme: hook_form_FORM_ID_alter, où la partie FORM_ID dépend de l'id du formulaire que je veux modifier. Les identifiants de forme du formulaire que je veux modifier sont stockés dans la base de données en tant que variables persistantes et ce que je veux, c'est pouvoir les utiliser pour donner le nom de la fonction quand je le déclare. Mon tableau d'id de formulaire peut changer à tout moment, ce que hook_form_FORM_ID_alter doit faire de même pour chaque formulaire, donc je voudrais que seul le nom de la fonction dans la définition de la fonction change en fonction du contenu du tableau d'id de formulaire. J'ai essayé de googler pour quelque chose comme définition de fonction dynamique, mais cela ne semblait pas être ce que je recherchais.Définition de fonction dynamique (?)

Je sais que je pourrais facilement utiliser hook_form_alter et ensuite simplement vérifier l'identifiant à chaque fois, mais je préfère le faire de cette façon si c'est possible.

+0

Vous ne pouvez pas ajouter manuellement des fonctions sous forme de modifier en raison de la mise en cache. Définir un form_alter() et une instruction if est comme cela est normalement fait. –

+0

Okay. Je suppose que je vais le faire de cette façon alors. – numfar

Répondre

Questions connexes