2013-04-22 5 views
1

Предположим, у меня есть следующие категории.Показать сообщения только из одной подкатегории - Wordpress

Movies 

----- Action 
----- Science fiction 
----- Drama 

Music 

----- POP 
----- Rock 

Здесь фильмы и музыка являются родительскими категориями, а остальные являются подкатегориями.

Если я хочу отображать только музыку POP (сообщения для POP) из категории Музыка, как я могу это сделать.

Пожалуйста, помогите !.

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

<? 
// Get the post ID 
     $id = get_the_ID();   


     //get all the categories (this function will return all categories for a post in an array) 
     $category= get_the_category($id); 

     if ($category->category_parent == 0) { 

     //extract the first category from the array 
     $catID = $category[0]->cat_ID; 

     //Assign the category ID into the query 
     $verticalNavigationSwitcher = "cat=$catID&orderby=ID&order=ASC"; 
    }    


     $result = new WP_Query($verticalNavigationSwitcher); 


        //$featuredPosts->query('showposts=5&cat=3'); 
        while ($result->have_posts()) : $result->the_post(); 
     ?> 


    <li><a href='<?php the_permalink() ?>'><span><?php the_title(); ?></span></a></li> 


    <?php 
      endwhile; 
      wp_reset_postdata(); 
?> 
+1

Приведите пример того, как вы отображения результатов Generaly, для тех, кто не знаком с WordPress –

+0

показать вашу попробовал код. – Rikesh

+0

Привет Королевский и Рикеш, я добавил пример кода. На данный момент я понятия не имею, как отображать сообщения из подкатегории. В этом коде будут отображаться все сообщения из категории и подкатегорий. – Anam

ответ

0

Я нашел способ показать только один сообщения суб-категории.

если я использую «category__in» в моем запросе, он возвращает одну категорию сообщений.

$verticalNavigationSwitcher = "category__in=$catID&orderby=ID&order=ASC"; 
0

Похоже, что пример, который вы используете, усложняет ситуацию. Если вам просто нужны сообщения из определенной категории, вы можете использовать либо slug категории, либо ID для получения сообщений, и использовать WP_Query, как в приведенном выше примере.

Так что, если категория «Поп» имеет идентификатор 4 (вы можете получить идентификатор категории, зависая над именем категории в сообщениях -> Категории ... это показано в ссылке редактирования), тогда ваш код будет;

<?php 
$result = new WP_Query('cat=4'); 

while ($result->have_posts()) : $result->the_post(); 
?> 

Вот соответствующий раздел из Кодекса;

https://codex.wordpress.org/Class_Reference/WP_Query#Category_Parameters

Смежные вопросы