Доброго времени суток. Стоит WordPress и WooCommerce. Есть код, который должен показывать "Похожие товары" по цене, но в итоге получается сильный разброс как в меньшую сторону, так и в большую, хотя насколько я понимаю в бОльшую сторону вообще не должно быть выборки.
Код:
if( !$query ){
$cats = wp_get_post_terms( $post_id, 'product_cat' );
$cat = $cats[0];
$priсes = get_post_meta($post_id,'_price',true);
$query = array(
'posts_per_page' => 4,
'paged' => 1,
'post_status' => 'publish',
'post_type' => 'product',
'exclude' => $post_id,
'tax_query' => array(
array(
'taxonomy' => 'product_cat',
'field' => 'id',
'terms' => $cat->term_id
)
),
'meta_query' => array(
array(
'key' => '_price',
'value' => $priсes,
'compare' => '<',
),
array(
'key' => '_stock_status',
'value' => 'instock',
'compare' => '=',
)
)
);
}
В итоге товар выводится не отсортированный по цене, в разброс, да еще и почему-то показывает Товары с ценой, которая больше. Хотя стоит условие 'compare' => '<'.
Подскажите пожалуйста, как выводить товары в "Похожих товаров" с разницей +/- 5-10 тысяч и только их ?