Wie erstelle ich einen Hook zum Ändern jeder Knotenform?


7

Ich habe es versucht:

mymodule_form_node_alter

mymodule_form_node_form_alter

und globaler Haken:

function mymodule_form_alter(&$form, $form_state, $form_id) {
  if ($form['#id'] == 'node-form') {
      #set message
  }
}

Keiner von oben funktioniert für mich.

Ich muss einen Hook erstellen, der auf jedem Knotenformular aufgerufen wird. wenn es möglich ist.

Antworten:


11
function yourmodule_form_alter(&$form, &$form_state, $form_id) {
    if (strpos($form_id, '_node_form') !== FALSE) {
      // ...
    }
}

20
/**
 * Implements hook_form_BASE_FORM_ID_alter().
 */
function MYMODULE_form_node_form_alter(&$form, &$form_state) {
  // do staff
}

Es konnte nicht funktionieren, da Sie nach dem Hinzufügen des Hooks die Caches löschen müssen.


Dies ist der richtige Weg, um Knotenformulare in D7 anzuvisieren. !!
— Devendra Jadhav


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.