Amazonで商品を見る セール会場へ

WordPress│固定ページのテンプレート指定を一覧で確認する方法

目次

著者

WEB制作をしているデジタルノマド
WordPressのカスタマイズが好きで、色々と自作しています。

WordPressのカスタマイズに困ったらご相談ください!

公開固定ページのテンプレート指定を一覧にする

この一覧は各固定ページに保存された個別テンプレートの指定を調べます。実際に読み込まれるテンプレート全体の解析ではありません。

設置方法

専用プラグインまたは子テーマfunctions.phpのどちらか一方へ追加します。

ログイン中の管理者だけが見られる検証用固定ページで、ショートコードを使います。

function waza_page_template_assignments($atts) {
    if (!current_user_can('manage_options')) return '';
    $atts=shortcode_atts(array('page'=>1),$atts,'page_template_list');
    $page=max(1,absint($atts['page']));
    $items=get_posts(array('post_type'=>'page','post_status'=>'publish','posts_per_page'=>50,'paged'=>$page,'orderby'=>'ID','order'=>'ASC','suppress_filters'=>false));
    if (!$items) return '<p>この範囲に公開固定ページはありません。</p>';
    $out='<ul>';
    foreach($items as $item) {
        $slug=get_page_template_slug($item->ID);
        $label=$slug ? $slug : '個別テンプレートの指定なし';
        $out.='<li>ID '.esc_html((string)$item->ID).':<a href="'.esc_url(get_permalink($item)).'">'.esc_html(get_the_title($item)).'</a> — '.esc_html($label).'</li>';
    }
    return $out.'</ul><p>50件単位です。次の範囲はショートコードのpageを1増やしてください。</p>';
}
add_shortcode('page_template_list','waza_page_template_assignments');

1〜50件目は次の例です。

[page_template_list page="1"]

次の範囲はpage=”2″に変更します。

適用範囲・確認・戻し方

公開固定ページをID順に50件ずつ取得します。下書きと非公開ページは対象外です。

指定なしでもpage-{slug}.phpやpage-{id}.phpなどが使われる場合があり、ブロックテーマの解決規則も別です。

元に戻すときはショートコードを置いた検証用ページから外し、関数と登録を停止します。

参照:get_page_template_slug、クラシックテーマの固定ページテンプレート。

ローカルWordPressで関数の出力を確認し、実管理画面での表示・操作は別の検証として残しています。

  • URLをコピーしました!

実装を任せたい方へ

WordPressのカスタマイズ代行

ブロックの追加、テーマの改修、管理画面の調整など、記事で紹介している内容の実装を承ります。1時間 ¥8,000〜(税込)。

WAZAの有料記事のサブスクリプションも開始しました。

サービス

Service

WordPressサイトのカスタマイズのサービスに関心がありましたら、ぜひ詳細をご覧ください。

目次