コンテンツタイプに追加のテキストフィールドがある場合、検索コアはnode_view()
の結果からすべてのテキストを抽出するため、検索コアはそれらに自動的にインデックスを付けます
MODULE_node_update_index( $node )
を使用して、インデックスデータを簡単に追加できます。この特定のフック引数、$node
は、参照ではなく値で渡されます。つまり、特定の項目の設定を解除できません。
node_view
、そこで変更しますが、インデックスが作成されている場合にのみ、ノードの出力を通常は変更しません。
各コンテンツタイプ(例:admin/structure/types/manage/page/display)のManage Displayページに移動します。
カスタム表示設定のタブをクリックします。
システムが認識している表示モードが表示されます。 検索インデックスにチェックを入れて保存します。
新しい表示モード(例:admin/structure/types/manage/page/display/search_index)のタブからインデックスを作成するフィールドを設定できるようになりました。
構成->検索->検索設定(admin/config/search/settings)から検索インデックスをダンプすると、cronの実行によりすべてのインデックスが再作成されます。または、コマンドラインから_drush -y search-reindex; drush -y search-index
_を実行します。
node_update_index()
から呼び出される search_cron()
から読み取りを開始すると、最終的にnode_view($node, 'search_index');
が表示されます。これは、その表示モードが使用される方法です。