hook_form_alter更改数组,但不以联系人形式呈现

时间:2014-07-09 15:22:00

标签: drupal contact-form hook-form-alter

我使用hook_form_contact_site_form_alter来改变Conact Form。当我更改数组时,Everyting工作正常,例如:

  $form['firstname'] = array (
    '#type' => 'textfield',
    '#title' => t('FirstName'),
    '#maxlength' => 255,
    '#required' => true

  );

DPM($形式);告诉我这个:

enter image description here

所以,那就完美了

......但没有渲染!它仍然是旧的默认联系表格: enter image description here

我在想,可能是另一个钩子覆盖了我的,或者我必须告诉Drupal重建表单。我还没有在API Reference中找到任何有用的东西。

也许其他人有同样的问题,或者知道一个好的调试方法?

先谢谢

顺便说一句。我安装了contact_forms模块,但是再次卸载它,也许这是相关的。

1 个答案:

答案 0 :(得分:1)

使用form_alter时,不要忘记将第一个参数作为参考传递(&$form),否则一旦执行了函数,您的$form变量就不会被修改。< / p>

function hook_form_contact_site_form_alter(&$form, &$form_state, $form_id) {

}