Ne yapacağım bir adım geri almak ve hatta bu kanca kayıt olup olmadığını görmek. Genellikle $form_id
değişim.
Hata ayıklama işlemi:
- Devel'i aç
- D6 ile alıştığınız gibi kancanıza dsm ($ form_id) ekleyin
- Önbelleğinizi temizleyin
Drupal.org'dan örnek kod (içeride mymodule.module
veya template.php
dosyada) :
<?php
/**
* Implements hook_form_alter().
*/
function mymodule_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'form_views_exposed_form') {
drupal_set_message("Form ID is : " . $form_id);
}
}
?>
Bir grup form kimliğinin yazdırıldığını göreceksiniz, ardından görünümünüze maruz kalan form kancasını seçip oradan çalışacaksınız.
Ayrıca, drupal 7 ile belirli formları doğrudan kimliğe göre hedefleyebilirsiniz .
Misal:
<?php
/**
* Implements hook_form_alter().
*/
function mymodule_form_views_exposed_form_alter(&$form, &$form_state, $form_id) {
drupal_set_message("Form ID is : " . $form_id);
}
?>
Birden fazla açıkta kalan form kullanıyorsanız, form değiştirme işlevinde $ form ['# id'] inceleyerek belirli bir görünümü kontrol edebileceğinizi unutmayın.
Son olarak, bu işe yaramazsa ben bu sorun kuyruğu gözden geçirilmesini tavsiye ederim:
Form_alter hook yalak filtreler formunda filtre nasıl değiştirilir