検索フォームの配置方法
既存のサイトに検索フォームを配置することで、Fess の検索結果に誘導することができます。 ここでは https://search.n2sm.co.jp/ に Fess を構築し、既存サイトの各ページに検索フォームを置く例で説明します。
検索フォーム
ページ内で検索フォームを置きたい箇所に以下のコードを配置してください。
サイトのデザインに合わせて、class属性でクラス名を追加するなどしてCSSで必要に応じて調整してください。 https://search.n2sm.co.jp/ のURLは構築した Fess サーバのURLに変更して利用してください。
検索キーワードは q パラメーターとして Fess の検索ページ( /search/ )に送信されます。 maxlength には、 Fess 側のキーワード長の上限である query.max.length (初期値は 1000 )に合わせた値を指定してください。
サジェスト
配置した検索フォームにサジェスト機能を設定することもできます。 設定する場合は以下のコードを</body>の前に追加してください。
既にサイトでjQueryを利用している場合はjQueryのscript要素は追加する必要はありません。
サジェストは Fess のサジェストAPI( /api/v2/suggest-words )を利用します。 url は構築した Fess サーバのURLに合わせて変更してください。
suggestor に指定できる主なオプションは以下のとおりです。
"z-index"で指定する値は、他の要素と重ならない値を指定してください。
注釈
検索フォームを Fess サーバとは異なるドメインのページに配置する場合、サジェストAPIへのリクエストはクロスオリジン通信になります。 Fess は初期設定で api.cors.allow.origin=* を許可しているため、そのまま利用できます。 アクセスを制限したい場合は fess_config.properties の api.cors.allow.origin を変更してください。
注釈
/api/v2/suggest-words は Fess 本体が提供するAPIです。 以前のバージョンで利用していた /api/v1/suggest-words は Fess 本体からは提供されなくなり、利用するには fess-webapp-v1-api プラグインのインストールが必要です。 新規に構築する場合は /api/v2/suggest-words を利用してください。