在庫切れ商品の管理
在庫設定、クエリ時間フィルター、オプションのバックエンド機能フラグを使用して、在庫切れ商品をLive Searchの検索およびカテゴリの結果でどのように表示するかを制御できます。 これらのオプションには重要な制限があり、このトピックで説明します。
ストックステータスフィルター
Adobe Commerce stock属性quantity_and_stock_statusはファセットとしてサポートされておらず、Add Facet ダイアログには表示されません。 ただし、Live Searchは、クエリ時にフィルターとして使用できるinStock フィールドを公開します。
在庫切れ商品の非表示
在庫切れ商品を非表示にするには、次のいずれかの方法を使用します。
Commerce設定
1. 管理者から、Stores > Settings>Configuration>Catalog>Inventoryに移動します。
1. Display Out of Stock Productsを No に設定します。
- Save Configをクリックします。
Display Out of Stock ProductsがNoに設定されている場合、Live SearchはinStock = 'noをPLP ウィジェットを通じてストアフロントクエリに追加するため、在庫切れの製品は返されません。
API フィルター
Live Search APIを直接呼び出す場合(GraphQLまたはREST)、在庫切れ商品を明示的にフィルタリングします。例:
query productSearchInStockOnly {
productSearch(
phrase: ""
filter: [
{ attribute: "inStock", eq: "true" }
]
) {
total_count
items {
productView {
sku
name
inStock
}
}
}
}
この方法は、Live Search PLP ウィジェット を通じてリクエストをルーティングしない場合に使用します。
在庫切れ後の在庫切れを表示
関連度でソートする際に、結果セットで在庫切れの商品を常に在庫切れの商品の後に残しておくために、Adobeでは環境用の内部機能フラグを有効にすることができます。
- この機能フラグはLive Search管理UIでは公開されません。
- リクエストするには、Adobe サポート に連絡し、在庫切れの商品を検索結果の最後に移動する機能を参照してください。
マーチャンダイジングルールと在庫の検索
検索マーチャンダイジングルールは、クエリベースで、在庫の状態やファセット値によるグループ全体ではなく、個々の商品をターゲットにします。
- ルール条件は、買い物客の検索フレーズ(
Query is、Query contains、Query starts with、Query ends with)にのみ依存します。 - ルールイベント(ブースト、埋め込み、ピン、非表示)は、イベントごとに1つのSKUに適用されます。
そうした制約により:
- 在庫状況だけで、すべての在庫切れ商品を埋め込む、または非表示にするルールを作成することはできません。
- ルールにイベントとして追加した特定のSKUを手動で非表示または埋め込むことができます(ルールごとに50 ルールと25 イベントの制限があります)。
カタログ全体で在庫切れの商品を非表示にしたり、優先順位付けを解除したりするには、検索マーチャンダイジングルールの代わりに、このトピックで説明されている在庫設定とinStock フィルター(およびオプションの機能フラグ)を使用します。