function hook_form_alter(&$form, $form_state, $form_id) {
if ($form_id == 'node_form') {
drupal_set_message(t('some message.'));
}
}
Zuerst müssen Sie "Haken" Keyword Ihr Modul Stichwort .. können Sie Ihre Modulnamen annehmen, ist "contact_us" dann
function contact_us_form_alter(&$form, $form_state, $form_id) {
Nun ist diese Funktion verfügt über drei variable
- $ Formular
- $ form_id
- $ form_state
Die wichtigste Variable während der Formularänderung ist $ form_id, die im Grunde notiert, welche Form auf einer Seite geladen wird.
function contact_us_form_alter(&$form, $form_state, $form_id) {
print_r($form_id);exit; // Used to find the form id
}
, nachdem Sie das form_id
function contact_us_form_alter(&$form, $form_state, $form_id) {
if($form_id=='contact_us_form')
// Do your stuff
}
Hinweis gefunden werden: Prüfen Sie richtig benutzerdefinierten Modul schreiben haben und es ermöglichen .. auch klar Cache
Vielen Dank, ich bin in der Lage hinzufügen Neue Felder im Formular, aber nicht in der Lage, vorhandene Felder zu ändern oder zu entfernen. – Sharique
Sie sollten in der Lage sein, alle diese Dinge zu tun - Sie überprüfen, um sicherzustellen, dass Ihr Modul nach anderen Modulen ausgeführt wird, die das Story-Node-Formular ändern; Wenn Ihr Modul Änderungen vornimmt, fügt CCK (zum Beispiel) ein weiteres Feld hinzu, da können Sie nicht viel tun. Wenn Sie den allerletzten Riss in einem Formular bekommen müssen, nachdem alle anderen Module ihr Ding gemacht haben, sehen Sie im Modul http://drupal.org/project/util nach. Unter anderem können Sie die Reihenfolge ändern, in der Module ihre Hooks ausführen. – Eaton
Sie können auch mymodule_form_story_node_form_alter als Funktionsname für bestimmte Typen verwenden –