В основном я играю с плагином, который позволяет размещать посты в будущем на страницах архива. Мой вопрос шире, чем эта конкретная функциональность, но всем нравится какой-то контекст.
Я разбираюсь во многих концепциях разработки плагинов, но, должно быть, упускаю что-то очень простое.
Я могу успешно переписать запрос, который дает мне результаты, которые я хочу, вот так:
function modify_where( $where ) {
global $wp_query;
// define $year, $cat, etc
if( is_archive() ) {
$where = " AND YEAR(wp_posts.post_date)='".$year."' AND wp_term_taxonomy.taxonomy = 'category' AND wp_term_taxonomy.term_id IN ('".$cat."') AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'future')";
}
return $where;
}
add_filter('posts_where', 'catCal_where' );
Однако, если я пытаюсь создать новый WP_ Query('different_query_stuff
') после основного цикла, новый запрос использует тот же оператор WHERE, как описано выше.
Вопрос: чего мне не хватает?
Спасибо.