You are here

drupal6

内容包括drupal6教程,drupal6汉化,drupal6主题,drupal6模板,drupal6中文手册,drupal6 views,drupa6中文,drupal6安装,drupal6开发,drupal6视频,等

对非节点的内容进行索引:hook_update_index()(1)

g089h515r806 的头像
Submitted by g089h515r806 on 星期四, 2009-08-20 15:00

在你需要对非Drupal节点的内容进行搜索时,那么你可以钩住索引器并向其提供你需要的任何文本数据,这样它们在Drupal中就可被搜索了。假定你的小组支持一个遗留应用系统,这个系统可用来输入和查看最近几年的产品技术笔记。由于一些政策原因,你还不能完全使用Drupal的解决方案来替代这个遗留系统,但是你想在Drupal内部能够搜索这些技术笔记。没问题。让我们假定遗留系统将它的数据保存在了technote表中。我们将创建一个简短的模块,在里面使用hook_update_index()把这个数据库中的信息发送给Drupal的索引器,使用hook_search()将搜索结果显示出来。

Drupal版本:

什么时候使用索引器

g089h515r806 的头像
Submitted by g089h515r806 on 星期四, 2009-08-20 14:53

 

当搜索引擎的评价方式比标准的“匹配最多词语”方式要求更高时,一般使用索引器。搜索相关度(relevancy),指的是使用一个规则集(通常很复杂)对内容进行处理来判定它在一个索引内部的等级。
    如果你需要对大块的HTML内容进行搜索时,那么你就需要利用索引器的能力了。Drupal的最大优点之一就是,博客、论坛、页面等等都是节点。它们的基本数据结构是相同的,而这个共同纽带也意味着它们还将共享一些基本功能。一个这样的共同特性就是当启用了搜索模块后,所有的节点将被自动索引;而不需要额外的编程工作。即便是你创建了一个自定义节点类型,Drupal也会自动对其内容进行索引,这样你所作的修改在节点呈现时就能显示出来了。

老葛的Drupal培训班 Think in Drupal

Drupal版本:

使用搜索HTML索引器

g089h515r806 的头像
Submitted by g089h515r806 on 星期四, 2009-08-20 14:52

到目前为止,我们通过提供一个简单的hook_search('search')实现,检查了如何与默认搜索表单进行交互。然而,当我们的需求从使用简单的LIKE语句搜索数据库的一个VARCHAR列,提高到了索引网站内容,那么我们需要将该任务外包给Drupal内置的HTML索引器。

Drupal版本:

使用hook_search_page()格式化搜索结果

g089h515r806 的头像
Submitted by g089h515r806 on 星期四, 2009-08-20 14:39

如果你编写了一个提供搜索结果的模块,那么你可能想通过实现hook_search_page()来接管结果页面的外观。如果你没有实现这个钩子,那么就会调用theme('search_results', $results, $type)来进行格式化,它有个默认实现,位于modules/search/search-results.tpl.php。不要将这个与theme('search_result', $result, $type)混淆了,后者用来格式化单个搜索结果,它的默认实现位于modules/search/search-result.tpl.php。

Drupal版本:

页面

Subscribe to RSS - drupal6