テーマ 投稿

#0017 - WordPressの投稿ページ用テンプレートを作ってみよう

WordPressの固定ページ用テンプレートを用意する では、固定ページ用テンプレート page.php の作り方について紹介しました。

WordPressには固定ページの他に 投稿 があります。
固定ページと投稿の違いについては WordPressの特長と機能を理解しよう で紹介していますので、ぜひご覧ください。

投稿専用テンプレート single.php

固定ページも投稿も表示方法は、まったく同じです。
つまり、single.phpの内容は page.php とまったく同じ大丈夫です。

single.php を作る場所は、style.cssと同じ場所です。

  • mytheme
    • header.php
    • index.php
    • page.php
    • page-19.php
    • page-21.php
    • page-test3.php
    • screenshot.png
    • single.php
    • style.css
<?php get_header(); ?>
	<p>single.phpです</p>
<?php get_footer(); ?>

このように 固定ページはpage.php、投稿はsingle.phpとファイル名は違えど、内容は全く同じものになります。

投稿は single.php のみ

固定ページでは、特定の固定ページだけに適用する page-ページID.phpやpage-スラッグ.php がありました。
しかし、投稿では、single.php となります。

投稿におけるテンプレートの優先順位

WordPressの投稿では、基本的に single.php が適用されます。

優先度テンプレート
1カスタムテンプレート.php
2single.php
3singular.php
4index.php

index.php が表示されるのはバグです!

固定ページの時にもお話した通り、投稿を表示する為には single.php を用意する必要があります。
single.php が存在しない場合、index.php で表示することも可能ですが、それは想定しない動作、すなわちバグと認識した方が良いでしょう。

まとめ

今回は、WordPressの投稿を表示する為のテンプレート single.php について紹介しました。
固定ページはpage.php、投稿はsingle.php と覚えてください。

次回は、カスタムテンプレート.phpとsigular.php について紹介します。

  • この記事を書いた人

UOCN

IT業界29年の現役フリーランスエンジニア。 一部上場企業の大規模システムから個人商店のウェブサイトまで50を超えるプロジェクトに参画。 近年は、WordPressを採用したウェブサイト製作を中心に活動中。

-テーマ, 投稿
-, , ,