Есть ли простой или простой способ исключить все сообщения из пользовательской таксономии в цикле? Я искал высоко и низко, и ни SE, ни SO, ни Google, похоже, не имеют прямого ответа.
Я знаю, что это можно сделать с помощью запроса WPDB, но это похоже на огромную веревку, чтобы прыгнуть за что-то, что должно быть довольно простым.
Ответы:
Вы хотели бы использовать
NOT EXISTS
оператор вместе с передачей слагаемого таксономии, который говорит запросу не включать ни одной выбранной категории из вашей пользовательской таксономии в цикл.Чтобы исключить все посты, которые входят в таксономию «фрукты» (независимо от вида фруктов), вот фрагмент:
источник
NOT IN
число ХХterms
. Этот список терминов может увеличиться до большого размера, но он должен охватывать все термины с названием этой таксономии.Решение этой проблемы не так широко обнародовано, но так и должно быть.
Вы можете сделать следующее:
Аргумент оператора может принимать другие термины, но приведенный выше код в основном гласит: получить все посты из таксономической категории, в которых нет терминов «кошка» или «собака».
источник
Вот как это сделать для пользовательских типов записей и пользовательских таксономий:
Это отлично работало, чтобы исключить пользовательскую таксономию из пользовательского типа записи. Просто хотел добавить код цикла запроса, чтобы завершить фрагмент: while ($ the_query-> have_posts ()): $ the_query-> the_post ();
источник
Я сделал следующее, чтобы исключить посты из определенного термина таксономии:
источник
Этот код исключает статус => продано из post_type => списки
источник
Я использую плагин WordPress «Видимость категории» для RYO, который, кажется, работает очень хорошо.
Вы можете решить на странице администратора, какие категории являются видимыми или исключены из различных областей.
http://ryowebsite.com/wp-plugins/category-visibility/
-Адам
источник