我有一个 drupal 7 站点,并且希望将评论表单自定义为始终为纯文本(无论用户如何以及他们是否经过身份验证)。由于文本格式设置将被修复,我想删除出现在评论正文底部的小广告。
一般来说,我该如何自定义评论表单的外观?
更新
根据 Berdir 的说明,我添加了一个 #after_build 函数。我通过hook_form_comment_form_alter
在我的 template.php 文件中添加一个函数来做到这一点。该新函数及其调用的自定义函数如下:
function mytheme_form_comment_form_alter(&$form, &$form_state, &$form_id)
{
$form['comment_body']['#after_build'][] = 'configure_comment_form';
//$form['comment_body']['und']['#after_build'][] = 'configure_comment_form';
}
function configure_comment_form(&$form, &$param1, &$param2)
{
var_dump($form);
}
很明显,我可以看出我的configure_comment_form
函数在var_dump
打印出来时被调用。我已经尝试在代码中显示的数组中的configure_comment_form
两个位置添加到#after_build 。$form
我得到了相同的结果,评论正文表单字段就消失了。
我没有覆盖任何现有的构建后功能。 $form['comment_body']['#after_build']
添加函数时不存在,$form['comment_body']['und']['#after_build']
添加自定义函数后如下所示:
["#after_build"]=>
array(2) {
[0]=>
string(30) "field_form_element_after_build"
[1]=>
string(22) "configure_comment_form"
}