カスタム投稿タイプの記事一覧の表示方法について詰まってしまいました。
やりたいこと
記事が奇数か偶数かによって別のclassを付け、表示方法を変更したい。
件数が偶数(2、4、6、8…)の場合は
| 記事1 | 記事2 |
| 記事3 | 記事4 |
記事が奇数(1、3、5、7…)の場合は
| 記事1 | 記事2 |
| 記事3 |
カスタム投稿用のテンプレートです。
作成したソースコード
functions.php
/* 最後 */ function is_last_post() { global $wp_query; return ( $wp_query->current_post+1 === $wp_query->post_count ); } /* 奇数 */ function is_odd_post() { global $wp_query; return ( (($wp_query->current_post+1) % 2) === 1 ); } /* 偶数 */ function is_even_post() { global $wp_query; return ( (($wp_query->current_post+1) % 2) === 0 ); }
loop-投稿タイプ.php
<?php $args = array( 'numberposts' => -1, 'post_type' => '投稿タイプ名' ); $posts = get_posts( $args ); if( $posts ) : foreach( $posts as $post ) : setup_postdata( $post ); ?> <?php if ( is_odd_post() and is_last_post() ): ?> 奇数番目かつ最後の投稿の場合に表示される内容 <?php elseif ( is_odd_post() ): ?> 奇数番目の投稿の場合に表示される内容 <?php else: ?> 偶数番目の投稿の場合に表示される内容 <?php endif; ?> <?php endforeach; endif; wp_reset_postdata(); ?>
結果的には、記事を3件登録すると3件全てが「偶数番目の投稿の場合に表示される内容」で表示されてしまいます。
どうすれば改善できますでしょうか。
ご教授いただきたく存じます。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/26 06:16