【WordPress】カスタム投稿タイプのループ回数を取得してクラス名に付与するメモメモ
ループでランキングを表示する際に、「1位」「2位」「3位」でスタイルを変えたかったので、上から順番に番号が付くように以下のコードをfanction.phpに追加しました。
//ループ回数を取得 function loopNumber(){ global $wp_query; return $wp_query->current_post+1; }
んで、出力したい箇所に
<?php echo loopNumber(); ?>
すると、出力されるのは全て「0」。
あれ?
そりゃそうだ。「wp_query」だもん。
通常の投稿を取得しているので結果は「0」
カスタム投稿のループを指定するために以下のコードに変更。
//ループ回数を取得 function loopNumber(){ $args = array( 'post_type' => 'ranking' //←カスタム投稿タイプ名ね ); $customPosts = get_posts($args); global $customPosts; return $customPosts->current_post++; }
として、出力したい箇所に同じくこちらを。
<?php echo loopNumber(); ?>
これで無事ループ毎に「1、2、3、・・・」とclassが付与されました。
タグ: WordPress | 2016年9月30日