« 加了个每目录的文章数 | 主 页 |  »

解决了Nucleus 2.5b的搜索问题


11/07/03。  cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。

这一版中用到了MySQL的全文检索功能,这就要求建立Full-text的索引,然后用match-against的方法来查找。但这种技术是基于分词的,也就是文本必须能分成单词,西文比较简单了,有固定模式,但东亚文字就不行。这方面做得好的也就是Google一类的搜索引擎了。当然在4.0.1版之后,可以自己定义Stopword list,但对于不能修改设置或版本不够高的用户来说,仍然无福享受。当然,常用的汉语词也就几万个,做个List应该不太难,但用这种方法做索引也够CPU受的。

另一个新程序中用到了正则表达式来处理输入的检索词,这个正则表达式不但难懂,而且完全不支持多字节文字,没办法。幸好Nucleus的Xiffy大侠反应快,把影响使用的给去了,我才能做下面的事。

把这个新功能改成旧方法,要做以下几件事:
1、在/nucleus/libs/Blog.php中, line 373,把$select赋值为空,不用了。
2、改用新的Search.php,见Nucleus Forum上讨论。或者本站亦有下载

搜索功能实际上从文章名、文章体、摘要中进行全面查找,由于数据库中实际上包含了所有链接,所以有时显示出来了文章,但没有任何高亮显示,那就可以匹配文字是在链接内或是详细阅读里。

11/07/03 19:55:00,由cathayan发表。目录:下载

10条评论

沅沅:

谢谢!搞定了!膜拜一下~~

于 12/02/03 17:48:17 发表  http://ilogs.org

cathayan:

Nucleus是一套CMS──内容管理系统,基于PHP和Mysql。本站就是是用它架起来的。它支持皮肤/模板以及插件。简单地,可以把它当做一个Blog工具。

于 01/20/04 21:28:10 发表  http://blog.cathayan.org/member/1/category/8

metaldudu:

问个问题:
什么rss偶数条的blog是乱码???
地址:http://dudu.tocare.net/blog...

刷新偶数次的时候会报错;( 提示无效字符。。。

于 04/29/04 10:05:49 发表  http://dudu.tocare.net/blog

cathayan:

是够怪的。还想不到什么原因。不会是xml-rss2.php的毛病吧?

于 04/29/04 17:42:37 发表  http://blog.cathayan.org/member/1/category/8

metaldudu:

可我没有修改这个文件,用rss工具查看也是乱码,在admin区域也可以看到乱码;( 我已经换用你的chinese-2.5beta语言文件

于 04/29/04 19:41:32 发表  http://dudu.tocare.net/blog/

metaldudu:

数据库问题。。会出在哪儿?跟服务器有什么关系没有?

于 04/29/04 22:09:05 发表  http://dudu.tocare.net/blog/

metaldudu:

我已经在phpadmin查看了数据库,显示正常;(

于 04/29/04 22:29:26 发表  http://dudu.tocare.net/blog/

老鼠爱大米:

我也要安装一个~
你们用的是 什么编码,是 UTF-8么?
不知道下载官方网站然后下载汉化包好呢,还是下载 那个汉化包大虾提供的中文版?

于 10/28/04 15:05:39 发表  http://oo8h.com/news_186.html

求助,谢谢:

Hi,你好,我的nucleus3.2有搜索问题,只要语言设成中文,就什么都搜不到,我看你的可以搜索,请问怎么解决的?Ubuntu5.41, firefox1.0.4, php4, mysql 4.0,非常感谢,如果能发个邮件给我,就更感激了,^o^,wenqiang_wang /at/ yeah.net

于 05/29/05 04:52:00 发表  http://wenqiang_wang /at/ yeah.net

wenqiang:

cathayan 你好, 再次感谢! 搜索的问题解决了!

于 05/30/05 03:40:46 发表  http://wenqiang_wang /at/ yeah.net

这篇文章已经关闭,不能添加评论和投票
I am watching and will delete all spam.