Как добавить свои параметры в запрос не используя WP_Query?
Решено
Здравствуйте, скажите как можно в результат выдачи стандартного цикла вывода постов в вордпресс добавить свои параметры. То есть мне нужно что бы например в опредетенной таксономии выводились посты не стандартно а отсортированные так же как при использовании wp_query но при этом я не хочу вносить изменения прямо в шаблон, так как он у меня 1 для всех категорий и таксономий. Можно ли как то в wp добавлять параметры в запрос при определенных условиях?
1 Ответ(ы)
Ответ
В wp можно изменить результат выдачи, добавив параметры.
Сделать это можно следующим образом:
add_action( 'pre_get_posts', 'slug_cpt_category_archives' ); function slug_cpt_category_archives( $query ) { if ( is_tax( 'popular') ) { $query->set( 'posts_per_page', 50 ); $query->set( 'meta_key', 'top' ); $query->set( 'orderby', 'meta_value_num' ); $query->set( 'order', 'ASC' ); } }
Мы вышаем событие на action «pre_get_posts«, который позволит нам добавить параметры в запрос.
Что бы менять не все запросы а определенные, мы должны сделать проверку и если нужно установить дополнительные параметры(в примере: is_tax( ‘popular’)).
Параметры точно такие же как у wp_query.
Данный код нужно добавить в файл functions.php