Имею магазин на вордпресс+вукомерс тема сторфронт.
Как сделать, чтобы товары без цены или с ценой 0 показывались в конце списка товаров и исключались из сортировки ?
Эти коды не работают.
add_filter('posts_clauses', 'order_by_stock_status', 50, 2);
function order_by_stock_status($posts_clauses) {
global $wpdb;
if (!is_admin() && is_woocommerce() && (is_shop() || is_product_category() || is_product_tag() || is_product_taxonomy())) {
$posts_clauses['orderby'] = "price_query.price > 0 DESC, " . $posts_clauses['orderby'];
}
return $posts_clauses;
}
и это
add_filter('posts_clauses', 'order_by_no_price', 50, 2);
function order_by_no_price($posts_clauses) {
global $wpdb;
if (!is_admin() && is_woocommerce() && (is_shop() || is_product_category() || is_product_tag() || is_product_taxonomy())) {
if($posts_clauses['join']!=' LEFT JOIN wp_wc_product_meta_lookup wc_product_meta_lookup ON wp_posts.ID = wc_product_meta_lookup.product_id '){
$posts_clauses['join'] = $posts_clauses['join'] . " LEFT JOIN wp_wc_product_meta_lookup wc_product_meta_lookup ON wp_posts.ID = wc_product_meta_lookup.product_id ";
}
$posts_clauses['orderby'] = "wc_product_meta_lookup.min_price > 0 DESC, " . $posts_clauses['orderby'];
}
return $posts_clauses;
}
Вопрос трехлетней давности без решения
Как сделать сортировку товаров в Woocommerce чтобы товары без цены или с ценой 0 показывались в конце списка?
Неработает
Cортировка товаров в Woocommerce: чтобы товары без цены или с ценой 0 показывались в конце списка?
==============
СТРАННО что модератор сайта переставил статус вопроса со сложного на легкий, три года нет решения и вопрос легкий\. так напишите решение если так.