2014-02-11 4 views
0

У меня возникла странная проблема. Я хотел бы только показать сообщения из категории 7. Но с помощью следующего кода он не показывает мне что-нибудь:Категория запроса Wordpress

$featured = new WP_Query(array('post_type' => 'tours', 'posts_per_page' => 3, 'order' => 'DESC', 'orderby' => 'id', 'cat' => 7)); 
       if($featured->have_posts()) { 
        while($featured->have_posts()) : $featured->the_post(); 
         echo the_title(); 
        endwhile; 
       } 

Я также использую это:

$featured = new WP_Query(array('post_type' => 'tours', 'posts_per_page' => 3, 'order' => 'DESC', 'orderby' => 'id', 'category__in' => 7)); 

Но ничего не происходит.

+0

у оператора if из первого блока кода, какова разница между вашими $ с первого по второй? – Craftein

+0

Удалите post_type и проверьте один раз, потому что он работает нормально здесь. Если он работает, проблема не с cat –

+0

, но @BhumiShah Тип сообщения важен, чем я создаю его таксономию, откуда я хочу звонить данные – Nadeem

ответ

0

Привет Надим Попробуйте это, я надеюсь, что u найдет ваш ответ

$featured = new WP_Query(
    array(
     'post_type' => 'tours', 
     'posts_per_page' => 1, 
     'order' => 'DESC', 
     'orderby' => 'id', 
     'tax_query' => array(
        array(
        'taxonomy' => 'tours_cat', 
        'field' => 'id', 
        'terms' => array(7), 
        ), 
       ), 
      ) 
     ); 
+0

Thanax Deemi это очень полезно для меня – Nadeem

0

Сразу после вызова $featured = new WP_Query(array('post_type' => 'tours', 'posts_per_page' => 3, 'order' => 'DESC', 'orderby' => 'id', 'cat' => 7));

вызов echo $featured->found_posts и выяснить, есть ли сообщения в запросе

+0

его возвращение 0 – Nadeem

+0

Это означает, что у вас есть проблема в вашем запросе. Что бы я сделал? Я бы включил в объект WP_Query только параметр 'cat => 7', в конце концов другую категорию, затем проверьте количество сообщений в' WP_Query :: found_posts'; затем добавить другие параметры и посмотреть, какой параметр заставляет запрос возвращать нуль –

0

Пожалуйста, попробуйте этот

$args=array(
         'category__in' => array('7'), 
         'post_type' => 'tours', 
         'post_status' => 'publish', 
         'posts_per_page' => -1, 
         'caller_get_posts'=> 1 
        ); 
$featured = new WP_Query($args); 
if($featured->have_posts()) { 
       while($featured->have_posts()) : $featured->the_post(); 
        echo the_title(); 
       endwhile; 
      } 
0

Попробуйте

$featured = new WP_Query(array('post_type' => 'tours', 'cat' => 7, 'order' => 'DESC', 'orderby' => 'id', 'posts_per_page' => 10)); 
    if($featured->have_posts()) { 
     while ($featured->have_posts()) : $featured->the_post(); 
     the_title(); 
     endwhile; 
    } 
Смежные вопросы