34:固定ページでカスタムページテンプレートを選択できるようにする
公開日:2018年11月07日
固定ページ編集画面でカスタムページテンプレートを選択できるようにします。

固定ページ用のカスタムページテンプレートを作成します。
ファイル名は命名規則に則っていれば好きにつけて構いません。今回は「custom-page1.php」と「custom-page2.php」を作成します。
ファイルの先頭にカスタムページテンプレート用のPHPコメントを入れます。
<?php
/*
* Template Name: 管理画面表示名
* Template Post Type: 投稿タイプの指定(省略時:page)
* Description: 説明文
*/
?>
custom-page1.php
<?php
/*
* Template Name: 固定カスタム1
* Description: サブループあり固定ページテンプレート
*/
?>
<?php get_header(); ?>
<div class="content">
<div class="main">
<div class="main-loop">
<div class="inner">
<?php /***** メインループ開始 *****/ ?>
<?php if (have_posts()) :?>
<?php while (have_posts()) : the_post(); ?>
<?php $id = get_the_ID(); ?>
<?php // テンプレートパーツ読み込み:一覧 ?>
<?php get_template_part('content','page'); ?>
<?php endwhile; ?>
<?php else: ?>
<?php // テンプレートパーツ読み込み:記事なし ?>
<?php get_template_part('content','none'); ?>
<?php endif; ?>
<?php /***** メインループ終了 *****/ ?>
</div><!-- /.inner -->
</div><!-- /.main-loop -->
<?php /***** サブループ条件 *****/ ?>
<?php // その他記事 ?>
<?php
$args = array(
'post_type' => 'post',
'posts_per_page' => 5,
'category_name' => '未分類',
'ignore_sticky_posts' => 1,
'orderby' => 'id',
'order' => 'DESC'
);
echo getSubloop($args, 'その他最新記事');
?>
<?php /***** サブループ終了 *****/ ?>
</div><!-- /.main -->
</div><!-- /.content -->
<?php
get_footer();
custom-page2.php
<?php
/*
* Template Name: 固定カスタム2
* Description: サイドバーあり固定ページテンプレート
*/
?>
<?php get_header(); ?>
<div class="content">
<div class="main">
<div class="main-loop">
<div class="inner">
<?php /***** メインループ開始 *****/ ?>
<?php if (have_posts()) :?>
<?php while (have_posts()) : the_post(); ?>
<?php $id = get_the_ID(); ?>
<?php // テンプレートパーツ読み込み:一覧 ?>
<?php get_template_part('content','page'); ?>
<?php endwhile; ?>
<?php else: ?>
<?php // テンプレートパーツ読み込み:記事なし ?>
<?php get_template_part('content','none'); ?>
<?php endif; ?>
<?php /***** メインループ終了 *****/ ?>
</div><!-- /.inner -->
</div><!-- /.main-loop -->
</div><!-- /.main -->
<?php get_sidebar(); ?>
</div><!-- /.content -->
<?php
get_footer();
このページで出てくる関数
WordPress関数は「公式サイトのドキュメント」で確認しましょう。
WordPress関数
get_header()
have_posts()
the_post()
get_the_ID()
get_template_part()
get_sidebar()
get_footer()
オリジナル関数
getSubloop()
欠席者対応:wireframe13
同じタグのコンテンツ
同じカテゴリーのコンテンツ