2016-01-31 3 views
1

Я хотел бы добавить пользовательские аргументы во все запросы продукта Woocommerce, чтобы они возвращали только продукты, которые превышают указанную цену. (> 10 $)Скрыть продукты woocommerce, которые ниже заданной цены

Я хотел бы использовать действие в файле functions.php моей темы.

Любой ключ? Большое спасибо!

+3

использования фильтра [pre_get_posts] (https://codex.wordpress.org/Plugin_API/Action_Reference/pre_get_posts) с meta_query для фильтрации ценообразования. – glutaminefree

+0

Любой пример был бы благодарен, спасибо! – KostasS

ответ

1
add_action('pre_get_posts', function($query){ 
    if (!is_admin() and is_product_category() and $query->is_main_query()) { 
     $meta_query = $query->get('meta_query'); 
     $meta_query['relation'] = 'AND'; 

     $meta_query[] = [ 
      'key' => '_price', 
      'value' => 100, 
      'compare' => '<', 
      'type' => 'NUMERIC', 
     ]; 

     $query->set('meta_query', $meta_query); 
    } 
}); 
+0

Благодарим вас за ваш ответ. Я добавляю этот код в файл function.php без влияния на список продуктов ... хотя он выглядит правильно – KostasS

+0

И вы заменяете значение для сравнения цены в meta_query на значение, которое хотите? – glutaminefree

+0

yeap ... любое значение не влияет на список продуктов ... – KostasS

Смежные вопросы