Intereting Posts
Wp_mail Возвращение False на сервере Сохранение метаданных в пользовательском типе сообщения Существует ли плагин wordpress (а не членский) для продажи доступа к некоторым веб-страницам? Как я могу остановить загрузчик WP media от создания дубликатов моих загруженных изображений? Установите значение post_parent для изображений, загруженных кнопкой Add Media, в сообщение Крючки для сохранения сообщений делают post-new.php для загрузки данных последнего сообщения Не удается избавиться от старого правила перенаправления (Кто последует) Twitter-виджет Поиск файлов функций, которые не существуют URL-адреса с двумя таксономиями отсутствуют в файле Sitemap Имеет ли WordPress «API-интерфейс формы», как локализовать скрипты новой страницы, запрошенной ajax? Расширенный orderby с несколькими meta_query Обновление базы данных WordPress с 2,6 до 3,2 Есть ли предел разрешения при изменении размера изображения?

Как исключить пользовательскую таксономию из цикла post

Есть ли простой или простой способ исключить все сообщения из пользовательской таксономии в цикле? Я выгляжу высоко и низко, и ни SE, ни SO, ни Google не имеют прямого ответа.

Я знаю, что это можно сделать с помощью WPDB-запроса, но это просто похоже на массивную веревку, чтобы прыгать за что-то, что должно быть довольно простым.

Вы хотели бы использовать оператор NOT EXISTS вместе с передачей таксономии slug, который говорит, что запрос не включает какую-либо выбранную категорию из вашей пользовательской таксономии внутри цикла.

Чтобы исключить все сообщения, которые находятся в таксономии «фрукты» (независимо от вида фруктов), вот фрагмент:

 $args = array( 'post_type' => 'post', 'tax_query' => array( array( 'taxonomy' => 'fruit', 'operator' => 'NOT EXISTS' ) ) ); $query = new WP_Query( $args ); 

Решение этого на самом деле не распространяется, но должно быть.

Вы можете сделать следующее:

 $args['tax_query'] = array( array( 'taxonomy' => 'category', 'terms' => array('cat', 'dog'), 'field' => 'slug', 'operator' => 'NOT IN', ), ); query_posts($args); 

Аргумент оператора может принимать другие термины, но приведенный выше код в основном говорит о получении всех сообщений из категории таксономии, которые не имеют терминов «кошка» или «собака».

Вот как это сделать для пользовательских типов сообщений и пользовательских таксономий:

 $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') ), ) ); 

Это отлично работало, чтобы исключить пользовательскую таксономию из пользовательского типа сообщения. Просто хотел добавить код цикла запроса, чтобы завершить фрагмент: while ($ the_query-> has_posts ()): $ the_query-> the_post ();

Я использую «RYO» Category Visibility «WordPress Plugin», который, похоже, работает очень хорошо.

На странице администратора вы можете выбрать, какие категории видны или исключены из разных областей.

http://ryowebsite.com/wp-plugins/category-visibility/

-Адам

Я сделал следующее, чтобы исключить должности определенного термина таксономии:

 $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 ); 
 query_posts( array( 'post_type' => 'listings', 'tax_query' => array( array( 'taxonomy' => 'status', 'field' => 'slug', 'terms' => 'sold', 'operator' => 'NOT IN' ), ) ) ); 

Этот код исключает статус => продается из post_type => listings