搜索自定义条件

时间:2013-01-20 05:45:33

标签: drupal drupal-7 drupal-search

如何向默认搜索模块添加条件?

我想在节点中添加一个名为“允许搜索”的复选框字段,未检查的项目将不会显示在搜索结果中。

Extending Drupal 7 search似乎是我的解决方案,但我无法使其发挥作用; hook_search_execute()未执行。

你能解释一下为什么会这样吗?

1 个答案:

答案 0 :(得分:6)

您需要先在admin / config / search / settings上选择模块,并可能在“Active search modules”中取消选择Node模块。如果未在那里选择模块,则不会调用您的钩子。

  

screenshot

至于调用一个钩子并且没有调用一个钩子的原因,search_get_info()执行的代码(从search_menu()调用以构建搜索菜单的函数)首先调用{的每个实现{1}},然后检查已启用搜索集成的模块。由于您的模块未启用搜索集成,因此永远不会调用模块的hook_search_info()

hook_search_execute()