2014-01-25 2 views
0

У меня есть ситуация, когда у меня есть идентификаторы страницы. Но я не могу правильно получить название этих страниц, пожалуйста, взгляните.Отображение нескольких страниц wordpress

$check = $data['query']; 
echo $check; 

это отображает: 101, 103, 105, 107, 109

$query = new WP_Query(array('post_type' => 'page', 'post__in' => array($check))); 
?> 
    <div class="menu"> 
     <ul class="tabs"> 
     <?php while ($query->have_posts()) : $query->the_post(); ?> 
      <h2><?php the_title(); ?></h2> 
     <?php endwhile; ?> 
     <?php wp_reset_postdata(); ?>   
     </ul> 
    </div> 
</div> 

Но этот код отображает название первого ID. Какие-либо предложения?

ответ

0

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

Эта линия:

$query = new WP_Query(array('post_type' => 'page', 'post__in' => array($check)));

Должен быть:

$query = new WP_Query(array('post_type' => 'page', 'post__in' => $check));

Это распечатывается весь массив заголовков для меня.

Итак, я просто заметил, что вы печатаете строку в эхо. Вам нужно превратить это в реальный массив, обновив $check переменную:

$check = explode(',',$data['query']); 

Это даст вам массив на поставку в post__in части вашего запроса.

+0

Просто уточнить окончательный код запроса будет выглядеть так: '$ check = explode (',', $ data ['query']); $ query = new WP_Query (array ('post_type' => 'page', 'post__in' => $ check)); ' – atxpunkrock

+0

Спасибо. Теперь работает. :) – Shishirumrao

+0

Не заботьтесь о человеке, рад, что я мог бы помочь. – atxpunkrock

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