WordPress ブログ記事に指定したカテゴリの投稿一覧を表示。ショートコード利用で実現。

定期的に書いているカテゴリで、その前後や投稿一覧をそのページに掲載したいと思い、諸々検索。

するとありました。

WordPress のショートコードなるコードを利用して実現できるのだとか。

設置に若干戸惑いましたが、結果的に無事完了。

以下は設置に関するメモ書き。

まずは、\wp-content\themes\該当テーマ\functions.php に以下コードを記述追加。


function getCatItems($atts, $content = null) {
extract(shortcode_atts(array(
"num" => '5',
"cat" => ''
), $atts));
global $post;
$oldpost = $post;
$myposts = get_posts('numberposts='.$num.'&order=DESC&orderby=post_date&category='.$cat);
$retHtml='<ul>';
foreach($myposts as $post) :
setup_postdata($post);
$retHtml.='<li><a href="'.get_permalink().'">'.the_title("","",false).'</a></li>';
endforeach;
$retHtml.='</ul>';
$post = $oldpost;
return $retHtml;
}
add_shortcode("list", "getCatItems");

後はブログの記事に以下コードを記述すれば、指定されたカテゴリが、指定された件数分表示される。

以下例

[ list cat="4" num="10" ]

補足 : list cat=”カテゴリ番号” num=”掲載数(指定なしで全部表示)”

ちなみにカテゴリ番号については、管理ページ、カテゴリのページのURLで分かります。

以下例
・・・category&tag_ID=41・・・

以上、とっても使えるショートコードでした。

参考記事 : 記事内に特定カテゴリの新着一覧を出すショートコード:APPOFIT