1

CCKを使用してカスタムノードタイプを作成したプロジェクトでDrupalを使用する。ノードが持つカスタムフィールドに基づいて特定のノードを検索できるようにしたい。したがって、フィールドが「myfield」であるこのノードタイプのArticleがあるとしましょう。myfieldフィールドに基づいて、Articlesを検索できるようにします。デフォルトの検索モジュールでは、検索でtype:MyNodeTypeを使用してノードタイプを検索できることは理解していますが、検索するフィールドを制限する方法がわかりませんでした。任意のヒント?これはおかしくなりそうなことですか?ヘルプに感謝します。

4

3 に答える 3

3

デフォルトの検索では、特定のフィールドでフィルタリングできません。

いくつかのオプションがあります。

  • データベース内の実際のフィールドを再度フィルタリングするカスタムコードを記述します。
  • 特定のフィールドに対してフィルタリングできるViewsモジュールを使用します。
  • 特定のフィールドをフィルタリングできる ApacheSolr検索エンジンをインストールします。
    • これはインストールするのがかなり複雑です。
    • ただし、インストールに慣れている場合は、他の2つのオプションよりも優れた柔軟な検索になります。
于 2010-05-08T21:20:02.977 に答える
1

CCKファセットモジュールをチェックアウトします。このモジュールに関する詳細(プロジェクトページから):

CCKファセットは、ファセット検索と統合してコンテンツ構築キット(CCK)フィールドをファセットとして公開するモジュールのバンドルです。これにより、ユーザーはフィールド値を参照し、それらの値で検索結果をフィルタリングできます。

サポートされているCCKフィールドタイプは次のとおりです。

  • 文章
  • 番号
  • ノードリファレンス
  • ユーザーリファレンス
  • 日にち
  • 日付スタンプ
于 2010-05-08T21:55:17.690 に答える
0

このために、ビューに沿ってSearchAPIおよびSearchAPIDBモジュールを使用します。

これは記事を書くのに良い方法です。

于 2013-07-22T06:56:03.627 に答える