帮助Drupal搜索表单显示

时间:2010-08-09 17:09:18

标签: drupal search

在我的标题中显示搜索表单时,如果它不适合我的标题区域,首选方法是什么?

我应该......

  • 创建自定义区域?
  • 使用某种'print $ search_form'
  • drupal_get_form()??
  • 使用theme()函数??

请帮忙!我是Drupal的新手,并试图找出最好的“Drupal Way”做事。

2 个答案:

答案 0 :(得分:1)

取决于您希望如何定义或维护搜索表单。如果您将其视为主题的一部分(即,它与页面背景或颜色一样静态),请考虑在page.tpl.php中使用以下内容:

<?php if ($search_box): ?>
  <?php print $search_box ?>
<?php endif; ?>

这实际上是Drupal Way:如果你的主题没有修改页面变量,你可以在$search_box免费获得page.tpl.php。添加条件还允许站点维护人员在主题设置中关闭它并为其指定权限。

如果您希望为网站维护者提供从一个区域到另一个区域移动它的能力,请考虑使用搜索块。这样,它就可以像您网站上的任何其他块一样使用。这也被认为是Drupal Way-ish:如果你启用了搜索模块,你可以免费获得该块。

如果您想要表单主题,请使用第一种方法覆盖search-theme-form.tpl.php,如果使用第二种方法则覆盖search-box-form.tpl.php。这两个模板都可以在modules/search

中找到

答案 1 :(得分:0)

你可以做任何这些。您可以创建自定义区域,并使用CSS更改显示。您可以使用预处理挂钩或hook_form_alter更改表单。

取决于你最简单的事情。