27

カスタム属性で WooCommerce 製品アーカイブをフィルタリングしようとしています。

たとえば、「色」属性に「赤」が含まれる商品が 5 個あり、「色」属性に「青」が含まれる商品が 3 個あります。

「赤」を含む製品のみが表示されるように、製品ループにフィルタを適用するにはどうすればよいですか?

ありがとう

4

5 に答える 5

20

私のサイトの 1 つで、多くのデータを使用してカスタム検索を行う必要がありました。カスタム フィールドの一部は、オプションの 1 つで $args がどのように見えるかを示しています。

$args = array(
    'meta_query' => $meta_query,
    'tax_query' => array(
        $query_tax
    ),
    'posts_per_page' => 10,
    'post_type' => 'ad_listing',
    'orderby' => $orderby,
    'order' => $order,
    'paged' => $paged
);

「$meta_query」は次のとおりです。

$key = "your_custom_key"; //custom_color for example
$value = "blue";//or red or any color
$query_color = array('key' => $key, 'value' => $value);
$meta_query[] = $query_color;

それとその後:

query_posts($args);

したがって、おそらくここで詳細情報を取得できます: http://codex.wordpress.org/Class_Reference/WP_Query ページで「meta_query」を検索して情報を取得できます

于 2013-02-28T15:17:10.230 に答える
3

WooCommerce AJAX Product Filterを使用できます。製品のフィルタリングにプラグインがどのように使用されているかを見ることもできます。

スクリーンショットは次のとおりです。

ここに画像の説明を入力

于 2013-06-18T03:41:15.673 に答える
3

WooCommerce レイヤード ナビゲーション ウィジェットを使用すると、さまざまな属性セットを製品のフィルターとして使用できます。「公式」の説明は次のとおりです。

製品カテゴリを表示するときに、製品のリストを絞り込むことができるウィジェットにカスタム属性を表示します。

plugins/woocommerce/widgets/widget-layered_nav.php を調べると、フィルターを設定するために属性を操作する方法がわかります。URL は次のようになります。

http://yoursite.com/shop/?filtering=1&filter_min-kvadratura=181&filter_max-kvadratura=108&filter_obem-ohlajdane=111

...そして、数字は実際には、設定したいさまざまな属性値のIDです。

于 2013-03-11T06:43:21.977 に答える
2

プラグインはおそらく最良のオプションです。wordpress プラグイン ディレクトリまたは Google を調べて、プラグインが見つかるかどうかを確認します。以下のものを見つけましたが、それは完璧に機能しているように見えました。

https://wordpress.org/plugins/woocommerce-products-filter/

これはまさにあなたが求めていることをしているようです

于 2014-12-09T23:18:42.593 に答える