web-dev-qa-db-ja.com

Drupalプログラムで検索

タイトルまたは本文にいくつかのキーワードがあり、特定のタイプのノードを見つけるために、独自の検索メソッドを実装する必要がありますが、その方法がわかりません。

do_search()およびnode_search()メソッドを試してみましたが、結果が得られません。

3
xger86x

node_search() は、ノードモジュールからの hook_search() の実装であり、検索モジュールによって使用され、次の場所で利用可能な検索インターフェイスを提供します。 _/search_。 do_search() は、検索モジュールが保持するフルテキストインデックスに対するクエリを作成する内部関数のように見えます。

node_search()をカスタムコードから使用して、ノードのフルテキストインデックスをクエリできます。ただし、コンテンツタイプフィルタリングはサポートされておらず、特定のフィールドでの検索もサポートされていません。技術的には、正しい引数を使用したdo_search()のカスタム呼び出しでうまくいくようですが、node_search()がどのように使用するかを見ると、これは簡単ではないようです。

フィールドベースの全文検索をサポートしているため、 Views を使用してカスタム検索ページを作成する方がおそらく簡単です。

1
Pierre Buyle

search_data() を使用する必要があります。

指定されたキーで標準検索を実行し、フォーマットされた結果を返します。

3
user49

検索APIモジュール が必要なものを提供しているかどうかを確認します。

1
nmc