确定当前Drupal页面是否为搜索结果页面?

确定当前Drupal页面是否为搜索结果页面?,drupal,Drupal,如何确定当前Drupal页面是否为搜索结果页面?如果启用了干净的URL,通常可以这样做 function MYTHEME_preprocess_page (&$vars, $hook) { // ... if ($hook == 'page' && arg(0) == 'search') { // do search related stuff } } 在template.php中 正常的模板建议也有效,例如使用page search.tpl.php而不是page.t

如何确定当前Drupal页面是否为搜索结果页面?

如果启用了干净的URL,通常可以这样做

function MYTHEME_preprocess_page (&$vars, $hook) {
  // ...  

  if ($hook == 'page' && arg(0) == 'search') {
    // do search related stuff
  }
}
template.php中


正常的模板建议也有效,例如使用
page search.tpl.php
而不是
page.tpl.php
,如果需要的话。

请提供有关您想要做什么的更多信息。你是在创建一个模块还是在使用模板?看看这篇文章,了解如何编辑模板的信息。arg()函数不依赖于干净的URL,因此在禁用干净的URL时也可以使用。$hook变量仅在MYTHEME_预处理(&$vars,$hook)中可用。函数MYTHEME_preprocess_page(&$vars)已经是特定于“page”钩子的,因此那里没有$hook变量,您可以将其从if-statement中删除。感谢对arg()的说明;我从不部署干净的URL。还感谢您指出预处理错误,我从未注意到(这就是zen STARTERKIT中的情况)。