[WordPress]「while ( have_posts() ) : the_post();」のPHP構文を書き直すと…

WordPressのテーマで記事を表示する時に使うループ関数の↓の記述があります。

<?php if ( have_posts() ) : ?>
    <?php while (have_posts()) : the_post(); ?>
        …略…
    <?php endwhile; ?>
<?php endif; ?>

いつも使うヤツですね。

この「endif;」とか「endwhile;」を使った書き方ですが、テーマファイルの時は見通しが良くなります。

しかし、個人的には functions.php等で phpだけを書いてる時は「if(){ 〜 }」の書き方で統一したいんですよね。

ということで、ループ関数を書き直してみると↓のようになります。

<?php 
if ( have_posts() ){
    while ( have_posts() ) {
        the_post();
        …略…
    }
}
?>

the_post(); は関数を実行させるだけで、1件の記事を取得します。

勿論、↓でもOKです。

<?php 
if ( have_posts() == true ){
    while ( have_posts() == true ) {
        the_post();

        …略…
    }
}
?>

 

 

この記事を書いた人:

ナカシマ

北区赤羽在住のWEBデザイナー兼エンジニア。インターネット、WordPress、本・漫画、音楽が大好き。妻と猫と暮らすアップル信者。

BLOG: 着ぐるみ追い剥ぎペンギン