Я создал WP Query l oop для продуктов, и я использую сортировку WooCommerce по умолчанию, но фильтр не меняет порядок продуктов.
Вот WP Query l oop Я использую:
<?php
global $post;
$category_id = $wp_query->get_queried_object()->term_id;
$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
$query_args = array( 'post__not_in' => array( $post->ID ), 'posts_per_page' => 6, 'paged' => $paged, 'no_found_rows' => 1, 'post_status' => 'publish', 'post_type' => 'product', 'tax_query' => array(
array(
'taxonomy' => 'product_cat',
'field' => 'id',
'terms' => $category_id
)));
$r = new WP_Query($query_args);
if ($r->have_posts()) {
?>
<?php while ($r->have_posts()) : $r->the_post(); global $product; ?>
<div class="col-md-4 mt-5 mb-5">
<a href="<?php echo get_permalink( $loop->post->ID ) ?>" class="d-block w-100">
<div class="image-wrapper">
<img src="<?php the_post_thumbnail_url(); ?>" class="img-fluid head-image d-block mx-auto">
<?php if( $product->is_on_sale() ) { ?>
<div class="image-content">
<div class="sale">
<?php get_template_part('template-parts/part', 'sale'); ?>
</div>
</div>
<?php } ?>
</div>
</a>
</div>
<?php endwhile; ?>
<?php if (function_exists("pagination")) {
pagination($r->max_num_pages);
} ?>
<?php
// Reset the global $the_post as this query will have stomped on it
wp_reset_query();
}
?>
И я повторяю сортировку по фильтру перед l oop выше, например: <?php do_action( 'woocommerce_before_shop_loop' ); ?>
Но, как вы можете видеть, фильтр не отвечает заказ продукта.
Вот URL сайта: https://www.dev.ruitershopboxmeer.nl/paard/hoofdstellen/oornetjes/
Спасибо за ваше время!