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

Существует ли простой или простой способ исключить все сообщения из пользовательской таксономии в цикле? Я выглядел высоким и низким, и ни один SE, ТАКИМ ОБРАЗОМ, или Google, кажется, имеют прямой ответ.

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

22
16.03.2011, 16:50
4 ответа

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

Можно сделать следующее:

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

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

26
19.02.2020, 21:56
  • 1
    Умный. Но затем я должен был бы все еще вручную ввести каждый термин в той таксономии, корректной? –  Thomas 21.03.2011, 13:45
  • 2
    я не следую за Вами извините. В массиве условий Вы определяете термин значения, которые Вы хотите исключить из своего запроса цикла. Если Вы хотели, чтобы они были динамичными, можно, возможно, добавить, что пользовательский meta оценивает каждому сообщению и затем проверяет на значение той метаклавиши в запросе и устанавливает его тот путь, если это - то, что Вы имеете в виду. –  Dwayne Charrington 21.03.2011, 14:18
  • 3
    . Я вижу то, что Вы имеете в виду, но это является действительно громоздким. бинго –  Thomas 27.03.2011, 15:59
  • 4
    я действительно не посмотрел, но там конечно, должен быть плагином, который делает то, что Вы спрашиваете затем? –  Dwayne Charrington 27.03.2011, 23:30

Я использую "RYO ‘Видимость Категории’ Плагин WordPress", который, кажется, работает вполне прилично.

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

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

- Adam

-1
19.02.2020, 21:56
  • 1
    Мне кажется, что, имея необходимость установить дополнительный плагин, чтобы сделать это чрезмерно. Я свел бы свои зависимости к минимуму и конечно должен быть путь к этому, чтобы быть сделанным в цикле. –  Thomas 17.03.2011, 09:53

Вот то, как сделать это для пользовательских типов сообщения и пользовательского 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 ();

8
19.02.2020, 21:56

Я сделал следующее для исключения сообщений из определенного термина таксономии:

$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 );
0
19.02.2020, 21:56