Привет! Подскажите где копать или в каком направлении думать или может даже как сделать?))
У меня на странице товара внизу показывается "похожие товары"(related products). Только там совсем не то выводится. Если правильно понял, там выводятся товары всей категории(а в этой категории более 900 товаров разных подкатегорий). Поэтому мне нужно, чтобы в блоке Related products выводились товары подкатегории третьего уровня, соответствующие просматриваемому товару.
Например Товар находится а подкатеогрии (видеорегистратор-форд-фокус3). При просмотре этого товара сейчас выводятся ниже похожие товары из категории "видеорегистратор". А мне нужно, чтобы выводились похожие товары уже из подкатегории "-фокус3".
Нашел только этот код, вроде как отвечающий за вывод "related products":
<?php
/**
* Related Products
*
* This template can be overridden by copying it to yourtheme/woocommerce/single-product/related.php.
*
* HOWEVER, on occasion WooCommerce will need to update template files and you
* (the theme developer) will need to copy the new files to your theme to
* maintain compatibility. We try to do this as little as possible, but it does
* happen. When this occurs the version of the template file will be bumped and
* the readme will list any important changes.
*
* see https://docs.woocommerce.com/document/template-struct..
* author WooThemes
* @package WooCommerce/Templates
* @version 1.6.4
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
global $product, $woocommerce_loop;
if ( empty( $product ) || ! $product->exists() ) {
return;
}
if ( ! $related = $product->get_related( $posts_per_page ) ) {
return;
}
$args = apply_filters( 'woocommerce_related_products_args', array(
'post_type' => 'product',
'ignore_sticky_posts' => 1,
'no_found_rows' => 1,
'posts_per_page' => $posts_per_page,
'orderby' => $orderby,
'post__in' => $related,
'post__not_in' => array( $product->id )
) );
$products = new WP_Query( $args );
$woocommerce_loop['name'] = 'related';
$woocommerce_loop['columns'] = apply_filters( 'woocommerce_related_products_columns', $columns );
if ( $products->have_posts() ) : ?>
<?php _e( 'Related Products', 'woocommerce' ); ?>
<?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(); ?>
<?php endif;
wp_reset_postdata();
Пробовал решение от этого сайта: opttour(точка)ru/web/wordpress/pravilnyie-pohozhie-tovaryi-v-woocommerce/
Что-то явно в выводе поменялось, но проблему не решило...