我想在我的产品页面上显示相关产品部分,但是它在所有列中都显示了实际产品。 这是我的代码:
<?php
while ($loop->have_posts()): $loop->the_post();
$featured_image = wp_get_attachment_image_src(get_post_thumbnail_id($product->get_id()), 'single-post-thumbnail'); ?>
<div class="col-lg-3 related-tour">
<article>
<div class="featured-image" style="background-image: url(<?php echo (!empty($featured_image)) ? $featured_image[0] : '';?>);"></div>
<div class="article-info">
<h2>
<a href="<?php echo $product->get_permalink();?>"><?php echo $product->get_name();?></a>
</h2>
<p class="category">
<span><?php pll_e( 'Categories:' ); ?></span>
<?php echo $product->get_categories(', ', ' ' . __(' ', ' ', $cat_count, 'woocommerce') . ' ', ' ');?>
</p>
</div>
</article>
</div>
<?php endwhile;?>
<?php wp_reset_query();?>
该如何解决此问题?
答案 0 :(得分:0)
请勿使用自定义功能显示相关产品。
函数woocommerce_output_related_products
显示了相关产品。
在此文件/single-product/related.php
中查看。 (https://github.com/woocommerce/woocommerce/blob/master/templates/single-product/related.php)
您可以使用woocommerce_output_related_products_args
过滤器来更改相关产品查询的产品参数。
add_filter( 'woocommerce_output_related_products_args', 'my_woocommerce_output_related_products_args' );
function woocommerce_output_related_products_args( $args ) {
$args['post__not_in'] = [ get_the_ID() ];
return $args;
}