私は Woocommerce ストアの B2B 部分を開発しています。 woocommerce_product_query_meta_query
を正常にフィルタリングして、b2b 部分が有効になっている製品のみを b2b ユーザーに表示しました。
ただし、Woocommerce カテゴリ ウィジェットで 0 件の結果が表示される製品カテゴリを非表示にする方法が見つかりません (そのカテゴリには b2b 部分が有効になっている製品がないため)。
デフォルトの Woocommerce ウィジェット コードを書き換えて、b2b が有効になっているカテゴリ内の製品の数を返す各カテゴリ (およびサブカテゴリ) に対して wp クエリを実行することを検討しました。しかし、多数の製品やカテゴリにとって、これは非常に非効率的であるように思えます。
Woocommerce カテゴリ ウィジェットで「空の」カテゴリ (カテゴリ内に b2b 対応製品がない) を非表示にする方法はありますか?
ご提案ありがとうございます。
######編集######私の質問を明確にするために: これは、_eda_display_in_b2b メタが
yes に設定されている製品のみを表示するために製品クエリをフィルターするために使用する関数です:
リーリー
###例:
https://klon.vozikyprozivot.cz/kategorie-produktu/pridavne-pohony/
このカテゴリは、一般顧客およびログインしていないユーザーにとっては空ではありません。しかし、B2B 顧客の場合、表示する製品はありません。したがって、B2B 顧客向けにこのカテゴリ ウィジェットを非表示にする必要があります。
P粉4669094492024-01-11 14:57:57
製品カテゴリ ウィジェットを参照している場合は、空のカテゴリを非表示にする設定があります:
他のものについて言及している場合は、サンプル ページの URL とサイトのシステム ステータスを提供してください。 WooCommerce > ステータスから見つけることができます。 「システム レポートの取得」を選択し、「サポート用にコピー」を選択します。完了したら、返信に貼り付けてください。
###お役に立てれば。======編集======
上記の問題については、wc カテゴリフックを使用してカテゴリを削除できると思います。以下のコードを確認してください:
リーリー
上記のコードでは、ロジックを作成して、カテゴリに製品があるかどうかを確認し、製品以外のカテゴリの ID の配列を作成できると思います。これにより、リストやドロップダウンからカテゴリを除外できます。
###お役に立てれば。