0

次のコードを使用して、カテゴリの投稿をクエリしています。

<?php query_posts("cat=8"); ?>
<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
            <article>
                <h4><?php the_title(); ?> </h4>
                 <p><?php the_content(); ?></p>
             </article>
    <?php endwhile; ?>

1つのページで3回目(上記のコードの3つのインスタンス)を実行するまでは、正常に機能しているようです。これで、ページは永久に読み込まれるように見え、1ページ以上のテンプレートをコンパイルしているかのように壊れます。3番目のカテゴリに投稿を公開しない限り、すべて正常に機能することを述べておく必要があります

誰かがこのような問題を抱えていましたか、またはなぜそれが起こるのか知っていますか?これは投稿をクエリするための悪い習慣ですか?

4

1 に答える 1

2

代わりにWP_queryを使用して、問題を解決するwp_reset_postdataを利用できるようにします。

<?php
$the_query = new WP_Query( 'cat=8' );
while ( $the_query->have_posts() ) : $the_query->the_post();
?>
    <article>
        <h4><?php the_title(); ?> </h4>
        <p><?php the_content(); ?></p>
    </article>
<?php
endwhile;
wp_reset_postdata();
?>
于 2012-05-03T20:58:25.800 に答える