2016-11-03 6 views
-1

私は自分のカスタムテーマでwoocommerceプラグインを使用しています。デフォルトでは、woocommerceは行ごとに4つの商品を表示しますが、カテゴリ内の合計商品に応じて表示します。 例 カテゴリに3つの製品がある場合は、3つの製品を1つの列に表示します。 6または9品目の場合、1列に3品目が表示されます。または カラムあたり4つの製品を表示する場合よりも合計製品が8つある場合。 12個の製品または1列に6個以上の製品がある場合。動的にどのように行ごとの製品の数を変更する - WooCommerce

答えて

0

ここでは、hmtlが正しいことを保証するコードを示します。しかし、あなたはまだCSSを修正していますが、私はテーマをたくさんしていないので、本当にあなたを助けることはできません。

add_filter('loop_shop_columns', 'my_loop_shop_columns'); 
function my_loop_shop_columns() { 
    global $wp_query; 

    // calculate the amount of products visible on the current page 
    $posts_on_page = min($wp_query->found_posts, $wp_query->get('posts_per_page')); 

    if($posts_on_page >= 12) return 6; 
    if($posts_on_page % 4 == 0) return 4; 
    if($posts_on_page % 3 == 0) return 3; 
    return 4; 
} 
+0

こんにちは、ありがとうございました。このコードはうまくいきますが、私たちの条件に従って、どのようにして単一の製品liにcssクラスを追加できますか? –

+0

あなたが何を求めようとしているのか分かりません。あなたはそれを言い換えることができますか? – Magnavode

+0

こんにちは 商品タグにカスタムクラス名を追加する必要があるかもしれません: これは、CSSの列幅に応じて異なるブロック幅を指定できるようにする必要があります: .custom-3-cols .products。product {width: 33%} .custom-4-cols .products .product {width:25%} ありがとう –

関連する問題