Я использую WooCommerce 3.4.3 и Расширенные пользовательские поля. По умолчанию на сайте я сортирую товары по цене от высокой к низкой. В определенной категории (с идентификатором 87) я хочу иметь возможность поиска по установленным мной отношениям ACF, в которых есть meta_key of Base_ordering. Вот код, который я сделал до сих пор, но не могу понять, почему он неправильный или как правильно его фильтровать.
Любая помощь, которую вы можете предложить, будет принята с благодарностью!
function my_pre_get_posts( $query ) {
// do not modify queries in the admin
if( is_admin() ) {
return $query;
}
// only modify queries for 'event' post type
if( isset($query->query_vars['post_type']) && $query->query_vars['post_type'] === 'product' && $query->query_vars['tag_ID'] === 87 ) {
$query->set('orderby', 'meta_value');
$query->set('meta_key', 'bases_ordering');
$query->set('order', 'DESC');
}
// return
return $query;
}
add_action('pre_get_posts', 'my_pre_get_posts');