ブログ構築の手順は【総合まとめ】から!

[ WordPress ] 特定カテゴリーの記事一覧を表示するカスタマイズ

指定したカテゴリー内にある記事の一覧を表示するカスタマイズ方法です。

指定カテゴリーの記事一覧を表示するカスタマイズ

次の例では、カテゴリー ID が 3 の記事を全件表示します。

<?php $posts = get_posts('numberposts=0&category=3'); global $post;
?>
<?php if($posts): foreach($posts as $post): setup_postdata($post); ?> <p><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></p>
<?php endforeach; endif; ?>

get_posts('numberposts=0&category=3') となっている所を編集する事で、表示する記事数やソート順などを変更できるようです。

参考にさせてもらったページ

ありがとうございます。

ページに違う記事のコメントが表示される問題の解決法

ページの中で、あるカテゴリの記事一覧を表示しようとした所、コメントの内容がおかしくなる現象が発生した。
カテゴリの記事を取得するループの最後の記事 ID でコメントが出力されているみたい。

固定ページにサムネイル付き記事一覧 – 写真をめざせ!(略して写め) というページを参考に修正してみたコードは次の通り。

<?php if (have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php // このページの Post ID をバックアップ。 // これをやらないと次のループで最後に取得した ID がコメント欄にまで影響する $temp_query = clone $wp_query;
?>
<p>このページの ID = <?php the_ID(); ?></p>
<?php $my_query = new WP_Query('category=3'); while ($my_query->have_posts()) : $my_query->the_post(); $do_not_duplicate = $post->ID; ?>
<h2><?php the_title(); ?></h2>
<?php endwhile; ?>
<?php // このページの Post ID を復元 $wp_query = clone $temp_query; ?>
<?php have_posts(); the_post(); ?>
<p>このページの ID = <?php the_ID(); ?></p>
<?php comments_template(); ?>
<?php endif; ?>

こんな感じです。

ありがとうございました!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です