web-dev-qa-db-fra.com

Pourquoi ai-je une boucle infinie avec have_posts?

J'ai le code suivant, ce qui provoque une boucle infinie pour une raison quelconque. Quelqu'un peut-il expliquer ce qui se passe s'il vous plaît?

Merci!

<?php 

$flagged_stores = new WP_Query( array ( 'post_type' => 'store', 'orderby' => 'post_id', 'meta_key' => 'flagged', 'limit' => 10 ) );

   if($flagged_stores->have_posts()): ?> 
        <div class="table">
            <table class="form-table">
                <tr>
                    <th>Store</th>
                    <th>Flag Reason</th>
                    <th>Delete Flag</th>
                </tr>
                <?php while($flagged_stores->have_posts()): ?>
                    <td><?php echo the_title(); ?></td>
                    <td><?php// echo get_post_custom_values('flagged'); ?></td>
                    <td><?php// echo "Delete"; ?></td>
                <?php endwhile;?>
            </table>
    <?php else: ?>
            No flags found.
    <?php endif; ?>
2
yuval

Regardez cette réponse: obtenez le type de message personnalisé par tag

Je crois que vous utiliseriez $flagged_stores->the_post() dans la boucle while.

3
brownian

essayez d'utiliser 'posts_per_page' au lieu de 'limit' - http://codex.wordpress.org/Class_Reference/WP_Query#Parameters

1
Michael

Je ne sais pas si c'est la cause de la boucle infinie, mais votre WP_Query est désactivé.

$flagged_stores = new WP_Query( array ( 'post_type' => 'store', 'orderby' => 'ID', 'meta_key' => 'flagged', 'posts_per_page' => 10 ) );

J'ai mis à jour 'orderby' et 'posts_per_page'.

0
Evan Yeung