У меня есть Связанные продукты настроены, но это только показывает 2. Мне нужно, чтобы он показывал 5, но ни один из кода, который я изменил, ничего не изменил.WooCommerce Сопутствующие товары только показывают 2 продукта
Это мой related.php код:
<?php
if (! defined('ABSPATH')) {
exit; // Exit if accessed directly
}
global $product, $woocommerce_loop;
if (empty($product) || ! $product->exists()) {
return;
}
$related = $product->get_related($posts_per_page);
if (sizeof($related) == 0) return;
$args = apply_filters('woocommerce_related_products_args', array(
'post_type' => 'product',
'ignore_sticky_posts' => 1,
'no_found_rows' => 1,
'posts_per_page' => 5,
'orderby' => $orderby,
'post__in' => $related,
'post__not_in' => array($product->id)
));
$products = new WP_Query($args);
$woocommerce_loop['columns'] = $columns;
if ($products->have_posts()) : ?>
<div class="related products">
<h2><?php _e('Related Products', 'woocommerce'); ?></h2>
<?php woocommerce_product_loop_start(); ?>
<?php while ($products->have_posts()) : $products->the_post(); ?>
<?php wc_get_template_part('content', 'product'); ?>
<?php endwhile; // end of the loop. ?>
<?php woocommerce_product_loop_end(); ?>
</div>
<?php endif;
wp_reset_postdata();
и это код сопутствующих товаров на одной странице шаблона продукта:
<div class="row">
<div class="col-md-12">
<?php echo do_shortcode ('[related_products per_page="5"]'); ?>
</div>
</div>
Я думаю, что это связано с фильтром 'woocommerce_related_products_args', это, вероятно, изменить значение 'posts_per_page'. Не могли бы вы проверить свою тему, если есть какие-либо определения для этого фильтра? – vard
Единственная 'posts_per_page' определена в коде, который я вставил выше на related.php, и он установлен в 5. – graphixg1
Я говорю о фильтре ['woocommerce_related_products_args'] (http://hookr.io/filters/woocommerce_related_products_args/) - ищите его вместо 'posts_per_page' (аргумент фильтра можно назвать другим способом). – vard