我创建了一个名为“test”的自定义主题,我正在尝试显示搜索结果。
我将函数test_preprocess_search_results()添加到template.php(从drupal页面复制代码“function template_preprocess_search_results”,然后将search-result.tpl.php从搜索模块复制到“test”的模板文件夹中。
function test_preprocess_search_results(&$variables) {
$variables['search_results'] = '';
if (!empty($variables['module'])) {
$variables['module'] = check_plain($variables['module']);
}
foreach ($variables['results'] as $result) {
$variables['search_results'] .= theme('search_result', array('result' => $result, 'module' => $variables['module']));
}
$variables['pager'] = theme('pager', array('tags' => NULL));
$variables['theme_hook_suggestions'][] = 'search_results__' . $variables['module'];
}
我是drupal的新手,我关心的是如何在我的page.tpl.php文件中声明的某些div中显示搜索结果?在page.tpl.php div中执行<?php print render($page['search_result']); ?>
之类的操作?我不确定默认主题如何知道显示搜索结果的位置?任何人都可以帮助谢谢
ps:在我做了之后,刷新缓存,没有任何显示
答案 0 :(得分:1)
对于搜索结果,您应该使用 search-results.tpl.php (所有结果列表)和 search-result.tpl.php (单个列表项)模板。将它们从ROOT / modules / search文件夹复制到您的主题文件夹中,并根据需要覆盖它们。