跳转到主要内容
浩江 提交于 11 March 2014

今天旗下的http://www.anetb.com需要一个支持中文分词的搜索页,原drupal的太烂了,

我的做法是:结合xunsearch实现drupal commerce下的中文搜索

测试页:http://www.anetb.com/tsearch/demo/commerce/search.php  , 可输入“奶粉”,我的站准备做这个,暂时数据还不多

drupal 7 私有模块下载页:http://www.trackself.com/wp-content/xunsearch-d7-commerce.tar , 也许做得好后会放上drupal官网吧,不过我人太懒,再说吧

说实话,用drupal很久了,drupal的大缺憾之一,必然是搜索,接过很多商业站的单子,客户抱怨也在这里,英文还好,中文就是……

apache solr很烂,而且安装不是一般的复杂,我安装了N次,放弃!而且听说中文分词不是一般的复杂。

而模认的drupal search ,或者说commerce安装包自带的搜索也不咋的!

search api模块……呵呵,理想很宏大的模块,用起来,还不如views模拟的search来得方便,更别说中文支持了

相对而言,xunsearch做得很好很强大,可惜的地方是xunsearch没有现成的drupal模块,

于是自己写一个

1.安装xunsearch,不是一般的简单,会linux的就能安装成功

按着官网的http://www.xunsearch.com/doc/php/guide/start.installation 一步步做就是了

2.建立一个xunsearch的搜索数据库

直接复制官网的demo.ini数据库到同名目录,

centos 6默认安装后demo.ini在/usr/local/xunsearch/sdk/php/app/

直接复制demo.ini 为commerce.ini

好吧,别懒,修改一下配置,使之适合drupal commerce

共享我的出来:就是上面下载连接下载后的commerce.ini

3.建立一个drupal模块,用于同步索引,主要是hook_node的几个api啦,原理简单

即实现:当drupal有改动的时候,立即xunsearch的索引就能改动过来,我测试过,很快,小于20秒就更新了。

共享自己的模块:http://www.trackself.com/wp-content/tsearch.tar

其内的

tsearch文件夹是drupal 7 模块,可以放在sites/all/modules下

import.php  : 批量导入现有的drupal nodes  , 建议放在/demo/文件夹下,否则可能要改改第一行,这个文件最有用了,帮助你把旧的node、product全部导入xunsearch,马上就能搜索了

clear.php : 批量导入现有的drupal nodes  , 建议放在/demo/文件夹下,否则可能要改改第一行

search.php : 将搜索变为数据,方便我们调回drupal

4.安装模块后,直接就能用在drupal 7 + commerce上了

如果你不运行import.php的话,那么必须是新的node才有效!

我还没在其他commerce上测试过, good luck

我还没有写直接在drupal页上显示搜索结果的页面,因为每个用户的搜索页都可能不一样,

对我的站来说,未来搜索页会出现在http://www.anetb.com/searchpage,不过我还没套好

目前我还在使用http://www.anetb.com/tsearch/demo/commerce/search.php (注,这个搜索界面是xunsearch生成的,有兴趣请看官网http://www.xunsearch.com/doc/php/guide/util.skel)

6.该模块还会更新,目前没有管理界面、直接结合drupal的输出界面,也许在未来我会更新代码,详细请看下面的连接

http://www.trackself.com/archives/2539.html   有什么问题请到我博客留言或者加我们的群

good luck

QQ群:227600605 关于drupal anywhere \ drupal commerce\ drupal crawler cms email:lihaojiang_1@163.com buy me a coffee:http://me.alipay.com/trackself

标签
Drupal 版本

我用的solr  觉得也还可以, 你这个我一会试试。 有需要的其他小伙伴 我可以吧配置好的SOLR发你们。在QQ群里名字  东方胡神