代码之家  ›  专栏  ›  技术社区  ›  mac

Drupal搜索引擎不索引我的自定义节点!

  •  2
  • mac  · 技术社区  · 16 年前

    大约一小时前,有人发布了一个关于drupal搜索引擎的问题,内容如下:

    我知道drupal应该索引 node_view() 但我的自定义内容不会发生这种情况。另外:是否有更好的替代Drupal内置功能的方法?

    因为在我回答的时候,这个问题已经被删除了,我不想白白浪费我生命中的20分钟;)我想再重复一遍这个问题。希望这符合SO的规定!:)

    1 回复  |  直到 16 年前
        1
  •  6
  •   mac    16 年前

    Drupal搜索引擎可能不是Drupal最著名的功能,但它相当可靠、成熟和可靠。有很多 modules that enhance or substitute it 但是——至少在我的经验中——没有一种被普遍接受的“更好的方法”来管理搜索和索引。

    然而,对于非常大和繁忙的网站,人们更喜欢使用外部工具,如谷歌搜索框,甚至是专用软件或硬件,如solr/lucene或谷歌搜索设备(google search appliance,GSA)。

    然而,我在上面提供的链接通过使用率统计数据降序对搜索相关模块进行排序,因此您将在第一页找到最常用的模块。我个人喜欢的英语网站之一是 porter-stemmer ,它通过词干索引单词(例如:highness、highest和higher都将作为单词“high”的匹配项返回)。

    这是关于搜索和Drupal的一般信息。至于你的问题,你可以通过检查一些东西来找出你的问题:

    1. 有你的 cron.php 索引是作为cron运行的一部分完成的,因此-如果您没有crontab集,或者您没有手动执行它,那么您的节点可能还没有被索引。

    2. 设置是否正确? 搜索模块的设置位于 http://example.com/admin/settings/search :您的最小字长是否足以满足您的需要(默认为3个字母)?

    3. (您可以从设置页面中进行检查)。如果不是,则运行 cron.php 没有解决问题,再往下看。

    4. 重新索引是否解决了问题? 特别是如果通过SQL查询直接在Drupal表上插入数据,Drupal可能没有意识到节点的内容已经更改,因此不会更新索引。

    5. AFAIK,将不会返回有关未发布节点或要求查看权限高于您权限的节点的搜索结果。

    至于曾经发生在我身上的“卡住索引”。事实证明,当对节点进行索引时,是节点体中的一些PHP代码触发了PHP异常,因此索引过程将停止,并且不会对以下所有节点进行索引。

    希望这有帮助。祝你好运

    推荐文章