Отображение одного пользовательского типа записи в 3 разных местах домашней страницы в зависимости от категорий

#wordpress #custom-post-type

#wordpress #пользовательский тип записи

Вопрос:

 ```$specialmenuItems = new WP_Query(array( 
    'post_type'         => 'special_menu',
    'posts_per_page'    => -1,
));```
  

это мой пользовательский тип сообщения (специальное меню), в области администрирования есть три категории для этого типа сообщения (ужин, напиток и обед). Главный вопрос в том, как мы можем отображать этот тип записи в разных местах на основе разных категорий?

Ответ №1:

Вам нужно добавить категорию (это таксономия) в WP_Query:

 $specialmenuItems = new WP_Query( array(
    'post_type' => 'special_menu',
    'tax_query' => array(
        array (
            // Here is the taxonomy id
            'taxonomy' => 'category',
            'field' => 'slug',
            // Here you put needed category slug
            'terms' => 'dinner',
        )
    ),
) );

while ( $specialmenuItems->have_posts() ) :
    $specialmenuItems->the_post();
    // Show Posts ...
endwhile;

wp_reset_postdata();
  

Комментарии:

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

2. @DhruvSuthar В двух других местах вам просто нужно изменить «условия»=> «ужин» на другую категорию: «условия» => «напиток» или «условия» => «обед»