0
如果apachesolr在单独的模块中为搜索查询返回空结果,我正在寻找执行一些代码。我期待离开apachesolr模块和acquia模块不变。如何确定apachesolr是否返回空结果
如果apachesolr在单独的模块中为搜索查询返回空结果,我正在寻找执行一些代码。我期待离开apachesolr模块和acquia模块不变。如何确定apachesolr是否返回空结果
我一直在寻找同样的东西,发现此评论很有帮助:
http://drupal.org/node/877346#comment-3310554
基本上你只覆盖theme_box功能的template.php在你的主题,并检查标题和内容匹配默认“无结果”模板。
我最终什么了:
function mytheme_box($title, $content, $region = 'main') {
if ($title == t('Your search yielded no results') &&
$content == variable_get('apachesolr_search_noresults', apachesolr_search_noresults())) {
if ($_GET['fuzzyhelp']) {
// No results with fuzzy, go to landing page for no results.
drupal_goto('search_no_results');
}
// Rewrite search keys with fuzzy characters.
$keys = array_map('trim', explode(' ', search_get_keys()));
drupal_goto('search/apachesolr_search/'. implode('~ ', $keys). '~', 'fuzzyhelp=1');
}
else if ($_GET['fuzzyhelp']) {
// Tell user search was rewritten with fuzzy notations.
drupal_set_message(t('Your exact search did not match any products and was broadened to include all possible matches.'));
}
return $content;
}