当サイトにはプロモーションが含まれます。
サイトを使いやすくするメンテナンス性

WordPressで記事のタイトル一覧を表示するためのショートコード

サイトを使いやすくする

記事一覧を確認したいとき、Excelやスプレッドシートに転記したいときに便利なショートコードです。

// functions.php に追加
function display_post_titles_shortcode($atts) {
    // ショートコードの属性を設定
    $atts = shortcode_atts(
        array(
            'post_type' => 'post', // 投稿タイプ(デフォルト: post)
            'number'    => 10,     // 表示する記事数(デフォルト: 10)
            'orderby'   => 'date', // 並び順の基準(デフォルト: 日付)
            'order'     => 'DESC', // 並び順(デフォルト: 降順)
        ),
        $atts,
        'post_titles'
    );

    // クエリを準備
    $args = array(
        'post_type'      => $atts['post_type'],
        'posts_per_page' => $atts['number'],
        'orderby'        => $atts['orderby'],
        'order'          => $atts['order'],
    );

    $query = new WP_Query($args);

    // 結果の出力
    if ($query->have_posts()) {
        $output = '<ul class="post-titles-list">';
        while ($query->have_posts()) {
            $query->the_post();
            $output .= '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a></li>';
        }
        $output .= '</ul>';
    } else {
        $output = '<p>記事が見つかりませんでした。</p>';
    }

    // クエリをリセット
    wp_reset_postdata();

    return $output;
}
add_shortcode('post_titles', 'display_post_titles_shortcode');

ショートコードの使い方

[post_titles post_type="post" number="5" orderby="title" order="ASC"]

ショートコードの属性を設定して記載します。デフォルトの検索条件で問題なければ[post_titles]のみの記載で問題ありません。

post_type: 投稿タイプを指定(例: post, page, custom_post_type)
number: 表示する記事数(デフォルト: 10)※全件取得は「-1」
orderby: 並び替え基準(例: date, title, rand)
order: 並び順(ASC または DESC)

当サイトの記事一覧は↓のように表示されます。

WordPressで記事のタイトル一覧を表示するためのショートコード
タイトルとURLをコピーしました