Сообщения категории Return с WP_Query

У меня есть несколько категорий и вы хотите получить сообщения с этими категориями:

$temp = $wp_query; // assign ordinal query to temp variable for later use $wp_query = null; $wp_query = new WP_Query('cat=85'); if($wp_query->have_posts()) { ... } 

Но он не входит в условие if . Категория с id=85 существует, и некоторые сообщения используют ее. Поэтому я не понимаю, почему он не возвращает никаких сообщений.

Есть идеи. Я делаю что-то неправильно?

Solutions Collecting From Web of "Сообщения категории Return с WP_Query"

По умолчанию WP_Query будет возвращать только тип post post. Чтобы получить другие типы сообщений, вам нужно добавить аргумент post_type . Использование any будет возвращать результаты из всех публичных, зарегистрированных типов сообщений.

 $my_query = new WP_Query( array( 'cat' => 1, 'post_type' => 'any' ) ); var_dump($my_query->request); // debug; allows you to see the SQL if($my_query->have_posts()) { // .. } 

Если вам нужен только конкретный тип сообщения, просто используйте пул типа сообщения, или вы можете использовать массив сообщений типа типа для получения возвратов из нескольких типов сообщений.

Кроме того, редко бывает хорошей причиной для clobber $wp_query , даже если вы сохраните его, чтобы вернуть его позже.