Существует ли простой или простой способ исключить все сообщения из пользовательской таксономии в цикле? Я выглядел высоким и низким, и ни один SE, ТАКИМ ОБРАЗОМ, или Google, кажется, имеют прямой ответ.
Я знаю, что это может быть сделано через запрос WPDB, но это просто походит на крупную веревку для перехода для чего-то, что должно быть довольно просто.
Решение этого не действительно, который предал гласности, но это должно быть.
Можно сделать следующее:
$args['tax_query'] = array(
array(
'taxonomy' => 'category',
'terms' => array('cat', 'dog'),
'field' => 'slug',
'operator' => 'NOT IN',
),
);
query_posts($args);
Аргумент оператора может взять другие условия, но в вышеупомянутом коде в основном говорится, получают все сообщения от таксономии 'категория', которые не имеют условий 'кошкой' или 'собакой'.
Я использую "RYO ‘Видимость Категории’ Плагин WordPress", который, кажется, работает вполне прилично.
Можно выбрать администраторскую страницу, какие категории видимы или исключены из различных областей.
http://ryowebsite.com/wp-plugins/category-visibility/
- Adam
Вот то, как сделать это для пользовательских типов сообщения и пользовательского taxonomies:
$happening = new WP_Query(
array(
'post_type' => 'news', // only query News post type
'tax_query' => array(
array(
'taxonomy' => 'news-cat',
'field' => 'slug',
'terms' => 'media', // exclude items media items in the news-cat custom taxonomy
'operator' => 'NOT IN')
),
)
);
Это работало отлично для исключения пользовательской таксономии из пользовательского типа сообщения.. Просто требуемый для добавления цикла запроса кодируют для завершения отрывка: в то время как ($the_query-> have_posts ()): $the_query-> the_post ();
Я сделал следующее для исключения сообщений из определенного термина таксономии:
$argos = array(
'tax_query' => array (
array(
'taxonomy' => 'topics', // My Custom Taxonomy
'terms' => 'college', // My Taxonomy Term that I wanted to exclude
'field' => 'slug', // Whether I am passing term Slug or term ID
'operator' => 'NOT IN', // Selection operator - use IN to include, NOT IN to exclude
),
),
'post_type'=>'page', // Post type I want to show, can be a custom post type too
'posts_per_page' => -1,
'orderby' => 'title',
'order'=>'ASC',
'post_parent' =>$post->ID // show child posts or pages of current page/post
);
$query = new WP_Query( $args );