WordPressの固定ページに指定したカテゴリーidの投稿リストを表示するショートコードです。
functions.phpへ以下のコードを追加して、ショートコードを定義します。
カテゴリー毎の投稿を一覧表示するショートコード
// 投稿を取得する // num_p:表示数 // id:カテゴリーID //
- Python Flaskを使ってREST APIを作成する
- PythonでTwitterAPIを使ってツイートする
- Python ディレクトリ配下のファイルの一覧を再帰的に取得する
-
function get_post_list($atts)
{
$a = shortcode_atts(array(
'num_p' => 20,
'id' => 1
), $atts);
$args = array(
'numberposts' => $a['num_p'],
'category' => $a['id']
);
$my_posts = get_posts($args);
if (!empty($my_posts)) {
$output = '<ul>';
foreach ($my_posts as $p) {
$output .= '<li><a href="' . get_permalink($p->ID) . '">'
. $p->post_title . '</a></li>';
}
$output .= '<ul>';
}
return $output ?? '<strong>条件に一致する投稿がありません</strong>';
}
// ショートコード
add_shortcode('p_list', 'get_post_list');
例) ショートコード使用1
[p_list id=8]
HTML編集で記載します。[get_p_list]でショートコードを指定し、引数として[id]の”8″を渡しています。カテゴリーIDが8の投稿リストを表示します。
例)ショートコード使用2
[p_list id=8 num_p=3]
上記は、カテゴリーidの”8″の投稿取得して、投稿3つを表示します。
例) 実際の表示
