@shelganov

Как сделать правильные аргументы для WP_Query?

Добрый день. Нужно вывести на странице список постов с определенными метками (которые указаны у открытого поста, например, webinars), которые не входят в категорию 'upcoming'. Проблема в том, что если пост из категории 'upcoming' содержит эту метку, то он выводится тоже, т.е
'operator' =>'NOT IN'
не работает. Укажите, пожалуйста, где ошибся:
$args = array(
                'post_type' => 'webinar',
                'posts_per_page' => 3,
                'tag__in' => (wp_get_post_tags( get_the_ID(), array( 'fields' => 'ids' ))),
                'post__not_in' => array(get_the_ID()),
                'tax_query' => array(
                    'taxonomy' => 'webinars',
                    'field' => 'slug',
                    'terms' => 'upcoming',
                    'operator' =>'NOT IN'
                )
            );
  • Вопрос задан
  • 188 просмотров
Пригласить эксперта
Ответы на вопрос 1
@mais64
Фронтенд разработчик
Вам нужно использовать tax_query. Смотрите примеры по ссылке

Пример:
$args = array(
	'post_type' => 'webinar',
	'posts_per_page' => 3,                
	'tax_query' => array(
		'relation' => 'AND',
		array(
			'taxonomy' => 'post_tag',
			'field'    => 'slug',
			'terms'    => 'webinars',
			),
		array(
			'taxonomy' => 'category',
			'field'    => 'slug',
			'terms'    => 'upcoming',
			'operator' => 'NOT IN',
			)
		)
	);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы