1

我需要更改指示我的搜索表单行为的函数。我希望文本是“GO”而不是“Search”,输入类型是搜索而不是文本。

现在,我已经通过编辑 search.module 完成了这项工作,但有没有更方便的方法?我希望主题是 1 包交易并准备就绪,而不必编辑 Drupal 安装中的其他文件。

适用于 Drupal v.7.16

谢谢!

4

2 回答 2

3

在主题的 template.php 中,您可以通过实现 MYTHEME_form_alter 覆盖搜索表单的任何部分。

对于您的示例,它可能看起来像这样:

function MYTHEME_form_alter(&$form, &$form_state, $form_id) {
    if ($form_id == 'search_block_form') {
        // Change form submit text
        $form['actions']['submit']['#value'] = t('GO!');

        // Change type to 'search'
        $form['search_block_form']['#type'] = 'search';
    }
}
于 2012-10-29T01:38:36.120 回答
2

有关 Tanis 解决方案的更多背景信息,请参阅hook_form_alter()hook_form_FORM_ID_alter()的 API 文档。

于 2012-10-29T17:43:15.017 回答