Da der von Ihnen gemeldete Code nach der Formular-ID des Knotenformulars sucht, gibt es zwei Fälle.
Drupal 6
Wenn der Code versucht, das zum Festlegen der Einstellungen für einen Inhaltstyp verwendete Formular zu ändern, sollte die folgende IF-Anweisung verwendet werden.
if ($form_id == 'node_type_form' && isset($form['identity']['type'])) { /* … */ }
Wenn der Code versucht, das Knotenbearbeitungsformular zu ändern, sollte der Code die folgende IF-Anweisung verwenden.
if (isset($form['type']) && isset($form['#node']) && $form['type']['#value'] . '_node_form' == $form_id) { /* … */ }
Drupal 7 und höher
Im ersten Fall sollte die IF-Anweisung die folgende sein:
if ($form_id == 'node_type_form') { /* … */ }
Wenn Sie einen anderen Ansatz verwenden und annehmen, dass mymodule der Kurzname Ihres Moduls ist, könnten Sie ihn verwenden mymodule_form_node_type_form_alter(&$form, &$form_state, $form_id)
. Seit Drupal 7 werden alle Hooks, die zum Ändern der von einem anderen Modul implementierten Form verwendet wurden, $form_id
als letzter Parameter abgerufen. Siehe hook_form_alter () , hook_form_FORM_ID_alter () , hook_form_BASE_FORM_ID_alter () .
Im zweiten Fall ist die IF-Anweisung dieselbe, die für Drupal 6 verwendet wird.
if (isset($form['type']) && isset($form['#node']) && $form['type']['#value'] . '_node_form' == $form_id) { /* … */ }