Cum să verifici dacă un WP_Query conține rezultate

29 aug. 2013, 17:35:08
Vizualizări: 19.3K
Voturi: 5

Am următorul WP_Query, care funcționează perfect:

<h4>Întrebări frecvente</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>

După cum vezi, există un titlu deasupra query-ului și aș dori să găsesc o metodă de a afișa acel titlu doar dacă există rezultate în query. În caz contrar, dacă nu există întrebări, titlul tot apare și arată nepotrivit.

Ai vreo idee cum pot verifica dacă există date într-un query sau nu?

Mulțumesc!

0
Toate răspunsurile la întrebare 1
0

Schimbă puțin abordarea și folosește metoda have_posts pentru a verifica dacă există rezultate:

<?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>Întrebări frecvente</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 }
29 aug. 2013 17:39:12