【问题标题】:Drupal search engine does not index my custom nodes!Drupal 搜索引擎不索引我的自定义节点!
【发布时间】:2009-11-26 00:12:58
【问题描述】:

大约一个小时前有人发布了一个关于 drupal 搜索引擎的问题,大概是这样的:

我知道 drupal 应该索引 node_view() 返回的任何内容,但这不适用于我的自定义内容。另外:有没有比 Drupal 内置功能更好的替代品?

由于在我回答时问题已被删除,并且不想白白浪费掉我生命中的 20 分钟;)我想再次重新创建问题。希望这符合 SO 的规则! :)

【问题讨论】:

  • 哈哈,很抱歉删除了我的帖子。问题仅仅是drush search index 实际上不起作用。如果您通过 cron 运行它,它应该可以正常工作。如果这没有帮助,mac的答案似乎非常好和彻底。如果匿名用户可以看到它们,搜索应该可以很好地找到您的节点。
  • 那没问题!很高兴你自己解决了! :)

标签: search drupal search-engine


【解决方案1】:

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

但是,对于大型和繁忙的网站,人们更喜欢完全使用外部工具,例如 google 搜索框,甚至是专用软件或硬件,例如 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. 网站的 100% 是否已编入索引?(您可以从设置页面查看)。如果不是,并且运行cron.php 并不能解决问题,请往下看。

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

  5. 您尝试查找的节点是否可见? AFAIK,未返回有关未发布节点或需要高于您的权限才能查看的节点的搜索结果。 p>

至于曾经发生在我身上的“卡住索引”。原来是节点主体中的一些 PHP 代码在节点被索引时会触发 PHP 异常,结果索引过程将停止,并且所有后续节点也不会被索引。

希望这会有所帮助。祝你好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多