登录 注册

登录

问题 解决 Joomla! 1.0.x 站内搜索时默认“任意关键词”问题

更多
2008年11月24日 21:04 #1 作者: Joomla之门
今天收到俄罗斯朋友 Yuri 的来信,他说:在 JoomlaGate 网站搜索(使用右上角搜索模块)“Joomla People”这个词的时候,结果几百个!根本不知道“Joomla 人物”的文章在哪里。

我测试了一下,确实如此。不过,在结果页面上的搜索框下面,又有“任意关键词”、“所有关键词”、“精确短语”三个选项。如果选择“所有关键词”,则搜索“Joomla People”得到4个结果,相当准确了。

那么,如何让搜索模块也能默认使用这个搜索机制呢?

经过摸索,发现可以通过修改源代码来实现:

打开 /components/com_search/search.php 这个文件, 在大约第 74 行,原来的代码是:
$searchphrase = mosGetParam( $_REQUEST, 'searchphrase', 'any' );

更改为:
$searchphrase = mosGetParam( $_REQUEST, 'searchphrase', 'all' );

实际上就改了一个字。

然后覆盖网站原来的 search.php 文件。现在 mod_search 就能默认工作在“搜索所有关键词”模式了。

建议所有正在使用 Joomla! 1.0.x 平台的用户都进行这个修改,这对于访客使用站内搜索十分有帮助。

另外,我同时查看了一下 Joomla! 1.5.x 核心,发现已经默认使用“全部关键词”了。可见 Joomla! 官方也认识到这个默认方式是正确的。

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论