1. 階層的facetsの作成

階層的なファセット戦略を実装する

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

階層的なfacetsは、検索時にフィルターを組み合わせることで、facet値の増加という問題を解決できます。システムのパフォーマンスと効率を向上させるために、階層的なファセット戦略を実施し、顧客がコンテンツコレクションをナビゲートできるようにしましょう。

階層的facetsを実装するには:

  1. あなたのfacetsリストの中で、組み合わせることで他のカテゴリに分類できる項目を生み出すfacetsを特定してください。例えば 、ブランドモデルなどです。

  2. ステップ1で特定されたfacetsの名前を連結して新しいファセットを作成します。例えば、brand_modelブランドモデル の連結文字列で、_ を区切り符として使います。

  3. 新しいファセットをエンティティの属性として追加し、その属性をファセットとして設定します。

  4. ソースのエクストラクタロジックを更新して、ファセット値の連結文字列を設定します。例えば、ブランドモデルが1 _で区切られている場合などです。

    例えば、Ford_FocusFord_Kugaです。

  5. 更新されたソースを公開し、再インデックスをトリガーします。

  6. アプリケーションやページが読み込まれた後、以下の手順を踏みます:

    • ウィジェットのfacetsと値をすべて含むデータをRequestしてください。この例では、ウィジェットrfkid_7です。

      このリクエストはセッションごとに少なくとも1回は実行することを忘れないでください。

    • 応答時に、返された面オブジェクトをローカルに保存します。

    • facetsおよびfacet値のリストにあるデータを用いて、必要なユーザーインターフェースを構築します。

  7. 以下のコードブロックを参照として、ウィジェットrfkid_7のデータリクエストを更新してください。

    { "context": { "locale": { "country": "us", "language": "en" } }, "widget": { "items": { "rfk_id": "rfkid_7", "entity": "car", "sources": "981588" , "search": { "limit"

    , "content": { "fields": "brand_model", "year", "city"

    }, "facet": { "max": 100, "types":

    { "name": "brand_model", "filtering_options": "hard_filters", "other_facet_values" }, { "name": "year", "filtering_options": "hard_filters", "other_facet_values" }, { "name": "city", "filtering_options": "hard_filters", "other_facet_values" }

    } } }

    } }

  8. そのリクエストからウィジェットのレスポンスを使い、contentの項目を解析して個々のfacets数を決定します。例えば、brand_modelフィールドを用いて、以下のfacetsでbrandとmodelを数えます。

    … "facet": { "name": "brand_model", "value": { "id": "facetid_eyJ0eXBlIjoiZXEiLCJuYW1lI…", "text": "Ford_Focus", "count": 6 }, { "id": "facetid_eyJ0eXBlIjoiHZAiLCoidHlwZ…", "text": "Ford_Kuga", "count": 2 }

    この例では、インデックスにはフォード車が8台あり、フォーカスが6台、クガが2台で構成されています。

  9. ステップ6で作成したfacetsのリストを埋めます。例えば:

    Ford (8) Focus (6) Kuga (2)

この記事を改善するための提案がある場合は、 お知らせください!