现在的位置: 首页 > 综合 > 正文

Drupal search module

2013年03月11日 ⁄ 综合 ⁄ 共 693字 ⁄ 字号 评论关闭

要使用drupal
search,首页要到后台模块管理开启search
模块,然后重建索引,运行cron

这样就可以使用了
。search 重建索引大概只涉及到core表
比如
node title node body。
如果想搜索cck
等额外的内容,可以借用其他模块
比如faceted_search
, field_indexer, cck_facets等模块结合
但是往往依靠模块可能不是很灵活
这是可以自己根据drupal
search 提供的hook,直接来扩展search功能
扩展search
很重要的hook
大概就是hook_search

可以自定义搜索项目
可以查看node
高级搜索,就是扩展search基本的功能而来

根据这个hook
你可以自定义搜索内容,比如搜索users
或者nodes
或者comments都可以

具体的搜索形式,你可以根据form
api
来扩展。最常用的就是hook_form_alter
() 。
也就是所,你可以使用form
api
随心所欲的定义搜索表单
N个搜索表单都可以

当然你可以自定义一个form
validate 来验证表单数据

关键一点就是key
values。它的格式是
比如: type:city name:xxx age:23
在验证的使用可以使用
form_set_value 把这些值保存
。hook_search 会自动接收处理

最后的数据都放在do_search
来处理得到结果,然后返回一个search结构数组

想修改搜索结果模板
可以拷贝
search-result.tpl.php
到自己的theme目录即可

抱歉!评论已关闭.