コーヒーアンドキーボード

コーヒーとキーボードにまみれて生活してます。一応専門はデジタルマーケ。

WordPressのサブループで$posts = get_posts($args)とするとハマる

<?php $posts = get_posts( $args ); ?>
<?php foreach($posts as $post) : setup_postdata($post); ?>
    <p><?php the_title(); ?></p>
<?php endforeach; ?>

と書いてサブループを作ってしまうと、のちに続くメインループが上書きされてしまいます。ハマります。なので、$postsは$my_postsとかにしておく必要があるそうです。

$posts = と書かないのは、$posts を復元する関数が用意されていないからです。

WordPress ループ&クエリーのモヤモヤを解消しよう!  |  wpxtreme

勉強ばっかりで開発が進まねぇ。