Как проверить, есть ли данные в WP_Query в WordPress
29 авг. 2013 г., 17:35:08
Просмотры: 19.3K
Голосов: 5
У меня есть следующий WP_Query, который отлично работает:
<h4>Часто задаваемые вопросы</h4>
<ul class="faq">
<?php
$args = array(
'post_type' => 'questions',
'posts_per_page' => '3',
'tax_query' => array(
array(
'taxonomy' => 'types',
'field' => 'slug',
'terms' => 'customer-service'
)
)
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul>
Как видите, выше запроса есть заголовок, и я хотел бы найти способ показывать этот заголовок только если в запросе есть данные. Если вопросов нет, заголовок всё равно отображается, что выглядит странно.
Есть идеи, как можно проверить, есть ли данные в запросе или нет?
Спасибо!

Johann
867
Все ответы на вопрос
1
0
Изменим подход и будем использовать метод have_posts для проверки наличия результатов:
<?php
$args = array(
'post_type' => 'questions',
'posts_per_page' => '3',
'tax_query' => array(
array(
'taxonomy' => 'types',
'field' => 'slug',
'terms' => 'customer-service'
)
)
);
$loop = new WP_Query( $args );
if ($loop->have_posts()){
?>
<h4>Часто задаваемые вопросы</h4>
<ul class="faq">
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul>
<?php }

Bainternet
67.7K
29 авг. 2013 г. 17:39:12
Похожие вопросы