パルどう.com マガジン

【ワードプレス】カテゴリごとに最新記事を表示する方法

パルどう@法人7期目 更新日:2021/12/16
カテゴリごとに最新記事を表示
💡チェック!
Amazon表示されている方限定クーポン!
見ておきたい

トップページにカテゴリごと記事を表示したい!

な人に向けて完璧な答えを提供する記事。

1、目標

<カテゴリ名1>
・記事1
・記事2
・記事3

<カテゴリ名2>
・記事1
・記事2
・記事3

というのを表示する。
具体的には当サイトのトップページを見てください。

2、実現するサンプルコード


<?php
$category_id = array(2,12,13,14);
$category_name = array('WEB制作','料理・食事','ファション','生活全般');
$catcount = count($category_id);

for($i=0;$i<$catcount;$i++){
?>

<h2><?php echo $category_name[$i] ?></h2>
<ul>
<?php
$args = array(
'posts_per_page' => 5,//記事を表示する件数
'cat' => $category_id[$i],
);
$the_query = new WP_Query($args);
if ( $the_query->have_posts() ) :
while ( $the_query->have_posts() ) : $the_query->the_post();
$samune = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'Midiamu');
$category_url = get_category_link($category_id[$i]);
?>

<!--ここはループ部分なので自分のサイト用に組み立てを-->
<li><img src="<?php echo $samune[0] ?>" alt="" width="" height=""/><br>
<a href="<?php the_permalink() ?>"><?php echo $post->post_title ?></a><br>
投稿日:<?php the_time('Y/m/d'); ?></li>

<?php
endwhile;
endif;
wp_reset_postdata();
?>
</ul>
<?php
echo '<div><a href="'.$category_url.'">'.$category_name[$i].'の記事一覧</a></div>';
}
?>

3、補足

カテゴリIDとカテゴリ名の配列は自力で作成すること。

自動で取得もできますが、
やはりカテゴリを表示する順番は自分で決めた方がいいです。
そのため、IDと名前の配列を作成してください。

あと、カテゴリ数が多いと負荷が増えるのでキャッシュを推奨します。
このままテキストに保存してもいいし、別にfile_get_contentsで取得して保存してもいい。
自分は記事を追加次第に手動でキャッシュ更新しています。

💡チェック!
楽天スーパーセール開催中!会場はこちら
楽天で買うなら今!
Amazon関連
WEB制作の関連記事

記事一覧はこちら:WEB制作

管理人について

名前:パルどう
料理もWEBサイトも作り続け20年…
法人7期目。必死に仕事中…

プロフィール詳細

関連サイト
  • parudou
    プログラミング関連の記事