2009-11-26 143 views
2

有人張貼了一小時前左右,這是對Drupal的搜索引擎的一個問題,是關於這樣的:Drupal搜索引擎不索引我的自定義節點!

我知道的Drupal應該索引任何由node_view()返回,但這是不會發生的我的自定義內容。另外:是否有更好的替代Drupal內置功能?

由於問題在我回答時已被刪除,並且不想丟掉我20分鐘的生命;)我以爲第二次重新創建問題。希望這是很好的規則! :)

+0

哈哈,抱歉刪除我的帖子。問題僅僅是「搜索索引」實際上並不起作用。如果你通過cron運行它應該工作得很好。如果這不能幫助蘋果公司的答案看起來非常好,徹底。如果匿名用戶可以看到他們,搜索應該可以找到您的節點。 – 2009-11-27 22:52:24

+0

沒問題,那麼!你自己解決的快樂! :) – mac 2009-11-28 12:21:28

回答

6

Drupal的搜索引擎可能不是Drupal的最有名的功能,但還算紮實,成熟可靠。有很多modules that enhance or substitute it,但 - 至少在我的經驗 - 沒有一個普遍接受的「更好的方式」來管理搜索和索引。

但是,對於非常大且繁忙的網站,人們更喜歡使用外部工具,如Google搜索框甚至專用軟件或硬件,如solr/lucene或Google Search Appliance(GSA)。

我上面提供的鏈接 - 然而 - 排序由降使用統計信息搜索相關的模塊,所以你會發現在第一頁上最常用的一個。我個人喜歡英語網站的是porter-stemmer,它根據它們的詞幹來索引單詞(例如:高,最高和最高都將返回爲與單詞「高」相匹配)。

這是有關搜索和Drupal的一般信息。至於你的問題,有一些事情你可以檢查追蹤您的問題:

  1. 有你cron.php最近一直執行?索引是作爲cron運行的一部分完成的,所以 - 如果你沒有設置crontab或者你沒有手動執行它,你的節點可能還沒有被索引。

  2. 是設置是否正確?搜索模塊的設置位於http://example.com/admin/settings/search:您的最小字長是否滿足您的需求(默認值是3個字母)?

  3. 先後網站的100%被編入索引?(您可以從設置頁面查看)。如果不是,並且正在運行cron.php不能解決此問題,請往下看。

  4. 是否重新索引解決這個問題?尤其是如果您通過SQL查詢的方式直接在Drupal表上插入數據,那麼很可能Drupal並未意識到節點的內容已更改,因此不會更新索引。

  5. 您試圖找到的節點是否可見?有關未發佈的節點或節點的搜索結果要求查看的權限高於您的權限不會返回AFAIK。

至於發生在我身上的「卡住索引」也一次。事實證明,在節點體內有一些PHP代碼在索引節點時會觸發PHP異常,因此索引進程將暫停,並且所有後續節點也不會被索引。

希望這會有所幫助。祝你好運!