Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal hook\u form\u alter更改数组,但不以联系人形式呈现_Drupal_Contact Form_Hook Form Alter - Fatal编程技术网

Drupal hook\u form\u alter更改数组,但不以联系人形式呈现

Drupal hook\u form\u alter更改数组,但不以联系人形式呈现,drupal,contact-form,hook-form-alter,Drupal,Contact Form,Hook Form Alter,我使用hook\u form\u contact\u site\u form\u alter来更改合同形式。当我更改数组时,一切都可以正常工作,例如: $form['firstname'] = array ( '#type' => 'textfield', '#title' => t('FirstName'), '#maxlength' => 255, '#required' => true ); dpm(表格);给我看这个:

我使用hook\u form\u contact\u site\u form\u alter来更改合同形式。当我更改数组时,一切都可以正常工作,例如:

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

  );
dpm(表格);给我看这个:

那太好了

。。。但是什么都没有!它仍然是良好的旧默认联系方式:

我在想,也许另一个钩子会覆盖我的钩子,或者我必须告诉Drupal重建表单。我还没有在API参考中找到任何有用的东西

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

提前谢谢


顺便说一句,我安装了contact_forms模块,但再次卸载了它,可能这与此有关。

当使用
form_alter
时,不要忘记将第一个参数作为引用(
&$form
)传递,否则执行函数后,
$form
变量将不会被修改

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

}

嗯,如果您认为还有一个模块正在执行并重写表单,请尝试更新权重。。。看看这个,我知道这是一个一字的答案。谢谢。