ホーム >  編集カテゴリー一覧 > めばえ いろいろ > PHP > ショートコード作成 > 

▲ショートコードで固定ページにカテゴリ一覧を編集

2015年10月12日 / ショートコード作成

ショートコードを使って固定ページや投稿に特定のカテゴリ一覧を編集する処理を作りました。プラグインなしで30行くらいのソースコピペで実現できます!HTMLの生成も関数で分けていますのでカテゴリごとに編集も可能です。

情報源: ショートコードで簡単解決!WordPress固定ページにカテゴリ一覧を編集する方法 | エス技研

 

※どうもこちらがよろしいかも。

 

// ショートコードで呼び出す関数
function Category_List ( $arg = array () ) {
extract ( shortcode_atts ( array (
‘category’ => ‘1’,
‘posts_per_page’ => ‘5’
), $arg ) );

$blog_posts = get_posts ( array (
‘posts_per_page’ => $posts_per_page,
‘category’ => $category
));

$html = Create_Html($blog_posts);
return $html;
}
add_shortcode(‘categorylist’, ‘Category_List’);

 

// HTMLを生成する関数
function Create_Html ( $blog_posts ) {
$html = ‘<div>’;
foreach ( $blog_posts as $post ) {
$html .= ‘<p>’ . get_post_time(‘Y.m.d’) . ‘</p>’;
$html .= ‘<p><a href=”‘ . get_permalink($post->ID) . ‘”>’ . $post->post_title . ‘</a></p>’;
}
$html .= ‘</div>’;
return $html;
}

 

[categorylist category=’2′ posts_per_page=’5′]

 

「category」は、カテゴリの IDになります。表示したいカテゴリを編集します。
「posts_per_page」は、表示する件数を編集します。
 
この仕組みではページ送りの処理は含まれていませんので、「最新 5件」を表示するといった想定になっています。
 
また、「posts_per_page => -1」の様に「-1」を指定すると、1ページの表示制限をなくすことができます(全件表示になります)。