指定カテゴリのみn件表示するループ(表示している記事は除く)@WordPress
指定したカテゴリへの投稿をn件表示するループです。
表示している記事は除きます。(よく見かける、投稿の最後にその投稿と同じカテゴリの他の投稿を表示する、あれです)
コード内にはカスタムフィールドで登録したアイキャッチ画像を出力する記述がありますが、そこはスルーしてください。
<?php $currentId = $post->ID; // 表示している記事を除外するため、当該記事のIDを取得 $args = array(/* 配列に複数の引数を追加 */ 'category' => 2, /* カテゴリIDを指定、「category」での指定はget_posts()の場合、他の場合は「cat」 */ 'posts_per_page' => 5, /* 表示する件数 */ 'exclude' => $currentId // 表示している記事を除外 ); ?> <?php $my_posts = get_posts( $args ); ?><!-- クエリの指定 --> <?php global $post;/* グローバル変数から値を取得 */ foreach ( $my_posts as $post ) :/* $my_postsを$postへ代入 */ setup_postdata( $post ); ?><!-- ここからループ開始処理 --> <div class="sidebar-unit"> <h4><?php the_title(); ?></h4> <a href="<?php the_permalink(); ?>" class="image feature"><?php echo(types_render_field("eyecatch", array( "proportional" => "false", "width" => "400", "height" => "200"))); ?></a> <p><?php echo my_excerpt(90); ?>…</p> <footer> <ul class="buttons"> <li><a href="#" class="button small">Read More</a></li> </ul> </footer> </div> <?php endforeach; // end of the loop. ?><!-- ここまでサブループ。投稿がまだある場合は◯行目に戻る。endforeachに注意 --> <?php wp_reset_postdata(); ?><!-- 忘れずにリセット -->
基礎からのWordPress (BASIC LESSON For Web Engineers)
- 作者: 高橋のり
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2013/01/29
- メディア: 大型本
- 購入: 1人 クリック: 12回
- この商品を含むブログ (1件) を見る