- 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細)
「テンプレート入門」の版間の差分
(en:Stepping Into Templates 19:07, February 19, 2006 Richardc020 版) |
細 ({{テーマ・テンプレートガイド}}) |
||
(5人の利用者による、間の9版が非表示) | |||
1行目: | 1行目: | ||
− | + | {{テーマ・テンプレートガイド}} | |
__TOC__ | __TOC__ | ||
− | + | テンプレートファイルは、あなたの WordPress サイトの構成要素です。サイト上のどのウェブページを生成するときにも、パズルのピースのように組み合わさります。ヘッダ・テンプレートファイルやフッタ・テンプレートファイルのようなテンプレートは、あらゆるウェブページのために繰り返し使われます。特定の条件でのみ使われるテンプレートもあります。 | |
− | + | 従来のウェブページは、2つのファイルで構成されます。 | |
− | + | *ページの構造と内容を担当する [[Glossary#XHTML|(X) HTML ページ]] | |
+ | *ページの表示スタイルを担当する [[Glossary#CSS|CSS スタイルシート]] | ||
− | + | WordPress には、(X)HTML 構造と CSS スタイルシートの両方が含まれていますが、内容に関しては、様々な[[テンプレート]]の影に隠れて生成されます。テンプレートファイルおよびスタイルシートは共に、[[テーマの使い方|WordPress テーマ]]として保存されます。テーマの作り方については、[[テーマの作成]]を参照してください。 | |
− | |||
− | <div style="background:white; border:2px blue solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | == WordPress のページ構造 == |
+ | |||
+ | ごく単純なウェブページ構成は、ヘッダー部分、コンテンツ部分、フッター部分の 3 ブロックで構成されます。各ブロックは、利用中の WordPress テーマのテンプレートファイルで生成されます。 | ||
+ | |||
+ | <div style="margin:5px;float:right"> | ||
+ | <div style="background:white; border:2px blue solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> | ||
Header | Header | ||
</div> | </div> | ||
− | <div style="background:white; border:2px red solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px red solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> |
Content | Content | ||
</div> | </div> | ||
− | <div style="background:white; border:2px purple solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px purple solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> |
Footer | Footer | ||
+ | </div> | ||
</div> | </div> | ||
− | + | * '''ヘッダー'''部分は、'先頭''に配置する必要のある情報、例えば — i.e. inside the <tt style="font-weight:bold; color:#036"><nowiki><head></nowiki></tt> tag — of your XHTML web page, such as the <tt style="font-weight:bold; color:#036"><nowiki><doctype></nowiki></tt> や <tt style="font-weight:bold; color:#036"><nowiki><meta></nowiki></tt> などのタグや、スタイルシートへリンクなど、XHTML で <tt style="font-weight:bold; color:#036"><nowiki><head></nowiki></tt> タグ内に含まれる情報が全て含まれます。<tt style="font-weight:bold; color:#036"><nowiki><body></nowiki></tt> の開始タグや、ブログで表示される[[Designing Headers|ヘッダー]](典型的にはサイトのタイトル、ナビゲーションメニュー、ロゴ、サイト概要など)も含まれます。 | |
− | + | * '''コンテンツ'''ブロックは、ブログの記事やページなど、あなたのサイトの「身」の部分です。 | |
− | + | * '''フッター''部分は、末尾に配置する情報、例えばサイト内の他の[[ページ]]やカテゴリーへのリンクなどの[[en:Good_Navigation_Links|ナビゲーションメニュー]]、著作権表示、コンタクト情報、その他の詳細、などが表示されます。 | |
− | |||
− | + | === 基本のテンプレートファイル === | |
− | + | [[テーマの使い方|WordPress テーマ]]の構成を作るには、あなたのテーマディレクトリに <tt style="font-weight:bold; color:#036">index.php</tt> テンプレートファイルを作ることから始めましょう。このファイルの主な機能は、次の2つです。 | |
+ | * 他のテンプレートファイルを include する(読み込む)。 | ||
+ | * データベースから(投稿、ページ、カテゴリ等の)情報を集める [[The Loop|WordPress ループ]]を読み込む。 | ||
+ | |||
+ | 単純な構造では、'''ヘッダー'''と'''フッター'''の2つのファイルを読み込むだけで良いです。ヘッダーは <tt style="font-weight:bold; color:#036">header.php</tt>、フッターは <tt style="font-weight:bold; color:#036">footer.php</tt> というファイル名にする必要があります。ヘッダーおよびフッターを読み込む[[テンプレートタグ]]は、以下の通りです。 | ||
<pre><?php get_header(); ?> | <pre><?php get_header(); ?> | ||
+ | |||
+ | |||
<?php get_footer(); ?></pre> | <?php get_footer(); ?></pre> | ||
− | + | あなたのブログの投稿とページを表示する(そして表示方法をカスタマイズする)には、<tt style="font-weight:bold; color:#036">index.php</tt> は、ヘッダー読み込みとフッター読み込みの間に [[The Loop|WordPress ループ]]を実行する必要があります。 | |
− | + | == より複雑なページ構造 == | |
<div style="margin:5px;float:right"> | <div style="margin:5px;float:right"> | ||
− | <div style="background:white; border:2px blue solid;margin:5px; font-size: 130%; text-align: center; padding-top:10px; width:120px; height:50px"> | + | <div style="background:white; border:2px blue solid;margin:5px; font-size:130%; text-align:center; padding-top:10px; width:120px; height:50px"> |
Header | Header | ||
</div> | </div> | ||
− | <div style="background:white; border:2px red solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px red solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> |
Content | Content | ||
</div> | </div> | ||
− | <div style="background:white; border:2px green solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px green solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> |
Sidebar | Sidebar | ||
</div> | </div> | ||
− | <div style="background:white; border:2px purple solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px purple solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> |
Footer | Footer | ||
</div> | </div> | ||
</div> | </div> | ||
− | |||
− | + | 多くの WordPress テーマでは、[[en:Customizing Your Sidebar|ナビゲーション機能]]やあなたのサイトについての情報を含む[[サイドバー]]が含まれています。サイドバーは <tt style="font-weight:bold; color:#036">sidebar.php</tt> という名前のテンプレートファイルで生成されます。サイドバーは、<tt style="font-weight:bold; color:#036">index.php</tt> テンプレートファイルから、下記の[[テンプレートタグ]]で読み込むことができます。 | |
− | + | <pre><?php get_sidebar(); ?></pre> | |
− | + | === 大事なコンテンツはどこ? === | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ウェブページの''コンテンツ''を取得するテンプレートタグがまだないことに注意してください。というのも、コンテンツは <tt style="font-weight:bold; color:#036">index.php</tt> 内の [[The Loop|WordPress ループ]]で生成されるからです。 | |
− | + | また、テーマのスタイルシートが、訪問者のブラウザ上でのヘッダー、フッター、サイドバーおよびコンテンツの見え方や配置を決定することに注意してください。WordPress テーマとウェブページのスタイルについての詳細は「[[WordPress サイトデザイン リファレンス]]」を参照してください。 | |
− | + | == テンプレートファイルの中にテンプレートファイル == | |
− | + | テンプレートファイル <tt style="font-weight:bold; color:#036">index.php</tt> の中に、WordPress がどのようにして標準テンプレートファイル (ヘッダー、フッター、サイドバー) を読み込むかを見てきました。どのテンプレートファイルも、他のテンプレートファイルを読み込むことができます。 | |
− | < | + | 例えば、<tt style="font-weight:bold; color:#036">sidebar.php</tt> は、検索フォームを生成するテンプレートファイル <tt style="font-weight:bold; color:#036">searchform.php</tt> を含むことができます。検索フォームは WordPress の標準テンプレートファイルではないので、読み込むためのコードが少し異なります。 |
− | + | <pre><?php get_search_form(); ?></pre> | |
− | + | 現在は [[関数リファレンス/get_search_form|get_search_form]] テンプレートタグが存在するため、検索フォームをテーマ内に表示させるためにインクルード方式や TEMPLATEPATH を使うべきではありません。 | |
− | |||
− | |||
− | |||
− | |||
− | |||
<div style="margin:5px; float:right"> | <div style="margin:5px; float:right"> | ||
− | <div style="background:white; border:2px blue solid;margin:5px; font-size: 130%; text-align: center; padding-top:10px; width:120px; height:50px"> | + | <div style="background:white; border:2px blue solid;margin:5px; font-size:130%; text-align:center; padding-top:10px; width:120px; height:50px"> |
Header | Header | ||
</div> | </div> | ||
− | <div style="background:white; border:2px red solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px red solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> |
Content | Content | ||
</div> | </div> | ||
− | <div style="background:white; border:2px #FF9900 solid;margin:5px; font-size: 130%; text-align: center; width:120px; height: | + | <div style="background:white; border:2px #FF9900 solid;margin:5px; font-size:130%; text-align:center; width:120px; height:80px"> |
Comment Form | Comment Form | ||
</div> | </div> | ||
− | <div style="background:white; border:2px green solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px green solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> |
Sidebar | Sidebar | ||
</div> | </div> | ||
− | <div style="background:white; border:2px #FF148A solid;margin:5px; padding-top:10px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px #FF148A solid;margin:5px; padding-top:10px; font-size:130%; text-align:center; width:120px; height:50px"> |
Search Form | Search Form | ||
</div> | </div> | ||
− | <div style="background:white; border:2px solid purple;margin:5px; font-size: 130%; text-align: center; width:120px; height:50px"> | + | <div style="background:white; border:2px solid purple;margin:5px; font-size:130%; text-align:center; width:120px; height:50px"> |
Footer | Footer | ||
</div> | </div> | ||
</div> | </div> | ||
− | + | ほとんどの WordPress テーマは、ウェブページを生成するために、テンプレートの中でさまざまなテンプレートファイルを読み込んでいます。典型的には、WordPress サイトのメインテンプレート (<tt style="font-weight:bold; color:#036">index.php</tt>) は、以下のテンプレートファイルを読み込んでいます。 | |
− | + | * <tt style="font-weight:bold; color:#036">header.php</tt> | |
− | + | ** <tt style="font-weight:bold; color:#036">theloop.php</tt> (The Content) | |
− | + | ** <tt style="font-weight:bold; color:#036">wp-comments.php</tt> | |
− | + | * <tt style="font-weight:bold; color:#036">sidebar.php</tt> | |
− | + | ** <tt style="font-weight:bold; color:#036">searchform.php</tt> | |
− | + | * <tt style="font-weight:bold; color:#036">footer.php</tt> | |
− | + | この構造を変更することもできます。例えば、ヘッダーに検索フォームを置くことが可能です。フッターを必要としないデザインであれば、フッターテンプレートを完全に除去することもできます。 | |
− | + | == 特殊なテンプレートファイル == | |
− | + | WordPress サイトでは、ウェブページの表示に2通りの'''コア表示'''機能が用意されています。'''単一記事表示'''は、個別記事を表示するのに使用します。'''複数記事表示'''は、複数の投稿もしくは投稿のサマリーを一覧表示します。カテゴリーアーカイブ、日別アーカイブ、著者アーカイブ、そして (たいていの場合) ブログのトップページで用いられます。状況に応じて、<tt style="font-weight:bold; color:#036">index.php</tt> テンプレートファイルを用いてこれらのページ全てを生成するか、あるいは WordPress [[テンプレート階層]] に従って異なるテンプレートファイルを使用できます。 | |
− | + | 次の疑問には、WordPress テンプレート階層が答えとなります。 | |
+ | <blockquote> | ||
+ | あるタイプのページを表示するとき、WordPress はどのテンプレートファイルを使用するのか? | ||
+ | </blockquote> | ||
− | WordPress | + | WordPress は、標準名のテンプレートファイルを自動認識し、ウェブページのタイプに応じて使用します。例えば、訪問者がブログ投稿のタイトルをクリックすると、WordPress は、訪問者がウェブページのその記事のみを見たいのだ、と理解します。The WordPress [[テンプレート階層]] は、<tt style="font-weight:bold; color:#036">single.php</tt> ファイルが存在すれば、<tt style="font-weight:bold; color:#036">index.php</tt> テンプレートファイルではなく <tt style="font-weight:bold; color:#036">single.php</tt> テンプレートファイルを使用して個別記事ページを生成します。同様に、訪問者が特定のカテゴリへのリンクをクリックすると、WordPress は <tt style="font-weight:bold; color:#036">category.php</tt> テンプレートファイルが存在する場合はこのファイルを利用します。<tt style="font-weight:bold; color:#036">category.php</tt> が存在しない場合は、<tt style="font-weight:bold; color:#036">archive.php</tt> を探します。<tt style="font-weight:bold; color:#036">archive.php</tt> も存在しない場合は、WordPress は <tt style="font-weight:bold; color:#036">index.php</tt> テンプレートファイルを使用します。特定のカテゴリー用に特定のテンプレートファイルを作成できます (詳細は [[en:Category Templates]] を参照)。また、特定のページ向けに[[Page_Templates|カスタムページテンプレート]]を作ることもできます。 |
− | + | == テンプレート利用のヒント == | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | WordPress テンプレートファイルを作成するヒントをいくつか紹介します。 | |
− | '' | + | |
− | </ | + | ;'''開始タグと閉じタグを追跡する''' |
+ | |||
+ | : テンプレートファイルには、[[Glossary#XHTML|XHTML]] タグと [[Glossary#CSS|CSS]] 参照が含まれます。HTML 要素と CSS 参照は、あるテンプレートファイルで開始して別のテンプレートファイルで終了するというように、複数のテンプレートファイルにまたがっても構いません。例えば、<tt style="font-weight:bold; color:#036">html</tt> と <tt style="font-weight:bold; color:#036">body</tt> HTML 要素は、典型的には <tt style="font-weight:bold; color:#036">header.php</tt> で開始し、<tt style="font-weight:bold; color:#036">footer.php</tt> で終了します。ほとんどの WordPress テーマは、HTML <tt style="font-weight:bold; color:#036">div</tt> 要素を使用しますが、これは複数のファイルにまたがっても構いません。例えば、ページコンテンツの main <tt style="font-weight:bold; color:#036">div</tt> が <tt style="font-weight:bold; color:#036">header.php</tt> で開始し、<tt style="font-weight:bold; color:#036">index.php</tt> あるいは <tt style="font-weight:bold; color:#036">single.php</tt> で終了しても構いません。[[Theme Development|テーマの作成、デザイン、修正]]をしている場合は、HTML 要素の開始と終了を追跡するのは、大変なこともあります。中身の多いタグの開始と終了をテンプレートファイルで [[Commenting Code|コメント]]を使用してメモしておくと、 どの <tt style="font-weight:bold; color:#036">div</tt> が別セクションのどこで終了しているかを追跡しやすくなります。 | ||
+ | |||
+ | ;'''異なるビューでテンプレートファイルを確認する''' | ||
− | + | : コメント、サイドバー、検索フォーム等テンプレートファイルのいずれかに変更を加えた場合は、(個別記事、異なるタイプのアーカイブ、ページなどの) 異なるページビューで確認するようにしてください。 | |
− | + | ;'''変更点をコメントする''' | |
− | + | : [[Designing Themes for Public Release|公開するテーマをデザインする]]場合、ダウンロードした人が自分で変更を加えるかもしれないことに留意してください。Default あるいは Classic テーマのロジックから変更した点について、テンプレートファイルにメモを記入するとよいでしょう。スタイル情報を別の個所(例えば<tt style="font-weight:bold; color:#036">header.php</tt> ファイルあるいは HTML タグなど)で指定している場合は、テーマのメインスタイルファイルにコメントしておくとよいでしょう。 | |
− | + | ;'''ドアを開けたら必ず閉める''' | |
− | + | :テンプレートファイルで HTML タグまたは <tt style="font-weight:bold; color:#036">div</tt> タグを開始し、そのファイル内で閉じタグを書かなかった場合、どこか他のテンプレートファイルで必ず閉じタグを含むようにしてください。ヘッダーテンプレートファイルで開始したタグを閉じないでフッターテンプレートファイルを取り除いてしまい、「テーマがおかしくなった」という質問が WordPress フォーラムに多く寄せられています。タグを追跡して、必ず閉じるようにしてください。(タグが正しいかを確認するには、個別記事ページとアーカイブページを [http://validator.w3.org HTML validator] で確認するとよいでしょう。) | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ;'''テンプレートの CSS スタイル''' | |
− | + | :テンプレートでは、HTML と CSS を好きなように使うことができます。しかしながら、WordPress テーマ構造 ([[Site Architecture 1.5]] 参照) に従うことが推奨されています。こうすることで、利用する人にとって、あなたのテーマが理解しやすくなるでしょう。 | |
− | + | == テンプレートファイルの参考資料 == | |
− | + | テンプレートについての詳細な参考資料のリストは、[[テンプレート]] を参照してください。[[:Category:テンプレート]] および [[:Category:テンプレートタグ]] の他のドキュメントも参考にしてください。 | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | {{原文|Stepping Into Templates|130550}}<!-- 2013-05-02T23:36:35 Hearvox 版 --> | |
− | Templates | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | {{DEFAULTSORT:てんふれえとにゆうもん}} | |
− | + | [[Category:WordPress レッスン]] | |
− | + | [[Category:デザインとレイアウト]] | |
− | + | [[Category:テンプレート]] | |
− | + | ||
− | [[ | + | [[en:Stepping Into Templates]] |
− | [[ | + | [[zh-cn:模板入门]] |
− | + | ||
− | + |
2015年5月7日 (木) 18:01時点における最新版
目次
テンプレートファイルは、あなたの WordPress サイトの構成要素です。サイト上のどのウェブページを生成するときにも、パズルのピースのように組み合わさります。ヘッダ・テンプレートファイルやフッタ・テンプレートファイルのようなテンプレートは、あらゆるウェブページのために繰り返し使われます。特定の条件でのみ使われるテンプレートもあります。
従来のウェブページは、2つのファイルで構成されます。
- ページの構造と内容を担当する (X) HTML ページ
- ページの表示スタイルを担当する CSS スタイルシート
WordPress には、(X)HTML 構造と CSS スタイルシートの両方が含まれていますが、内容に関しては、様々なテンプレートの影に隠れて生成されます。テンプレートファイルおよびスタイルシートは共に、WordPress テーマとして保存されます。テーマの作り方については、テーマの作成を参照してください。
WordPress のページ構造
ごく単純なウェブページ構成は、ヘッダー部分、コンテンツ部分、フッター部分の 3 ブロックで構成されます。各ブロックは、利用中の WordPress テーマのテンプレートファイルで生成されます。
Header
Content
Footer
- ヘッダー部分は、'先頭に配置する必要のある情報、例えば — i.e. inside the <head> tag — of your XHTML web page, such as the <doctype> や <meta> などのタグや、スタイルシートへリンクなど、XHTML で <head> タグ内に含まれる情報が全て含まれます。<body> の開始タグや、ブログで表示されるヘッダー(典型的にはサイトのタイトル、ナビゲーションメニュー、ロゴ、サイト概要など)も含まれます。
- コンテンツブロックは、ブログの記事やページなど、あなたのサイトの「身」の部分です。
- 'フッター部分は、末尾に配置する情報、例えばサイト内の他のページやカテゴリーへのリンクなどの、著作権表示、コンタクト情報、その他の詳細、などが表示されます。
基本のテンプレートファイル
WordPress テーマの構成を作るには、あなたのテーマディレクトリに index.php テンプレートファイルを作ることから始めましょう。このファイルの主な機能は、次の2つです。
- 他のテンプレートファイルを include する(読み込む)。
- データベースから(投稿、ページ、カテゴリ等の)情報を集める WordPress ループを読み込む。
単純な構造では、ヘッダーとフッターの2つのファイルを読み込むだけで良いです。ヘッダーは header.php、フッターは footer.php というファイル名にする必要があります。ヘッダーおよびフッターを読み込むテンプレートタグは、以下の通りです。
<?php get_header(); ?> <?php get_footer(); ?>
あなたのブログの投稿とページを表示する(そして表示方法をカスタマイズする)には、index.php は、ヘッダー読み込みとフッター読み込みの間に WordPress ループを実行する必要があります。
より複雑なページ構造
Header
Content
Sidebar
Footer
多くの WordPress テーマでは、やあなたのサイトについての情報を含むサイドバーが含まれています。サイドバーは sidebar.php という名前のテンプレートファイルで生成されます。サイドバーは、index.php テンプレートファイルから、下記のテンプレートタグで読み込むことができます。
<?php get_sidebar(); ?>
大事なコンテンツはどこ?
ウェブページのコンテンツを取得するテンプレートタグがまだないことに注意してください。というのも、コンテンツは index.php 内の WordPress ループで生成されるからです。
また、テーマのスタイルシートが、訪問者のブラウザ上でのヘッダー、フッター、サイドバーおよびコンテンツの見え方や配置を決定することに注意してください。WordPress テーマとウェブページのスタイルについての詳細は「WordPress サイトデザイン リファレンス」を参照してください。
テンプレートファイルの中にテンプレートファイル
テンプレートファイル index.php の中に、WordPress がどのようにして標準テンプレートファイル (ヘッダー、フッター、サイドバー) を読み込むかを見てきました。どのテンプレートファイルも、他のテンプレートファイルを読み込むことができます。
例えば、sidebar.php は、検索フォームを生成するテンプレートファイル searchform.php を含むことができます。検索フォームは WordPress の標準テンプレートファイルではないので、読み込むためのコードが少し異なります。
<?php get_search_form(); ?>
現在は get_search_form テンプレートタグが存在するため、検索フォームをテーマ内に表示させるためにインクルード方式や TEMPLATEPATH を使うべきではありません。
Header
Content
Comment Form
Sidebar
Search Form
Footer
ほとんどの WordPress テーマは、ウェブページを生成するために、テンプレートの中でさまざまなテンプレートファイルを読み込んでいます。典型的には、WordPress サイトのメインテンプレート (index.php) は、以下のテンプレートファイルを読み込んでいます。
- header.php
- theloop.php (The Content)
- wp-comments.php
- sidebar.php
- searchform.php
- footer.php
この構造を変更することもできます。例えば、ヘッダーに検索フォームを置くことが可能です。フッターを必要としないデザインであれば、フッターテンプレートを完全に除去することもできます。
特殊なテンプレートファイル
WordPress サイトでは、ウェブページの表示に2通りのコア表示機能が用意されています。単一記事表示は、個別記事を表示するのに使用します。複数記事表示は、複数の投稿もしくは投稿のサマリーを一覧表示します。カテゴリーアーカイブ、日別アーカイブ、著者アーカイブ、そして (たいていの場合) ブログのトップページで用いられます。状況に応じて、index.php テンプレートファイルを用いてこれらのページ全てを生成するか、あるいは WordPress テンプレート階層 に従って異なるテンプレートファイルを使用できます。
次の疑問には、WordPress テンプレート階層が答えとなります。
あるタイプのページを表示するとき、WordPress はどのテンプレートファイルを使用するのか?
WordPress は、標準名のテンプレートファイルを自動認識し、ウェブページのタイプに応じて使用します。例えば、訪問者がブログ投稿のタイトルをクリックすると、WordPress は、訪問者がウェブページのその記事のみを見たいのだ、と理解します。The WordPress テンプレート階層 は、single.php ファイルが存在すれば、index.php テンプレートファイルではなく single.php テンプレートファイルを使用して個別記事ページを生成します。同様に、訪問者が特定のカテゴリへのリンクをクリックすると、WordPress は category.php テンプレートファイルが存在する場合はこのファイルを利用します。category.php が存在しない場合は、archive.php を探します。archive.php も存在しない場合は、WordPress は index.php テンプレートファイルを使用します。特定のカテゴリー用に特定のテンプレートファイルを作成できます (詳細は を参照)。また、特定のページ向けにカスタムページテンプレートを作ることもできます。
テンプレート利用のヒント
WordPress テンプレートファイルを作成するヒントをいくつか紹介します。
- 開始タグと閉じタグを追跡する
- テンプレートファイルには、XHTML タグと CSS 参照が含まれます。HTML 要素と CSS 参照は、あるテンプレートファイルで開始して別のテンプレートファイルで終了するというように、複数のテンプレートファイルにまたがっても構いません。例えば、html と body HTML 要素は、典型的には header.php で開始し、footer.php で終了します。ほとんどの WordPress テーマは、HTML div 要素を使用しますが、これは複数のファイルにまたがっても構いません。例えば、ページコンテンツの main div が header.php で開始し、index.php あるいは single.php で終了しても構いません。テーマの作成、デザイン、修正をしている場合は、HTML 要素の開始と終了を追跡するのは、大変なこともあります。中身の多いタグの開始と終了をテンプレートファイルで コメントを使用してメモしておくと、 どの div が別セクションのどこで終了しているかを追跡しやすくなります。
- 異なるビューでテンプレートファイルを確認する
- コメント、サイドバー、検索フォーム等テンプレートファイルのいずれかに変更を加えた場合は、(個別記事、異なるタイプのアーカイブ、ページなどの) 異なるページビューで確認するようにしてください。
- 変更点をコメントする
- 公開するテーマをデザインする場合、ダウンロードした人が自分で変更を加えるかもしれないことに留意してください。Default あるいは Classic テーマのロジックから変更した点について、テンプレートファイルにメモを記入するとよいでしょう。スタイル情報を別の個所(例えばheader.php ファイルあるいは HTML タグなど)で指定している場合は、テーマのメインスタイルファイルにコメントしておくとよいでしょう。
- ドアを開けたら必ず閉める
- テンプレートファイルで HTML タグまたは div タグを開始し、そのファイル内で閉じタグを書かなかった場合、どこか他のテンプレートファイルで必ず閉じタグを含むようにしてください。ヘッダーテンプレートファイルで開始したタグを閉じないでフッターテンプレートファイルを取り除いてしまい、「テーマがおかしくなった」という質問が WordPress フォーラムに多く寄せられています。タグを追跡して、必ず閉じるようにしてください。(タグが正しいかを確認するには、個別記事ページとアーカイブページを HTML validator で確認するとよいでしょう。)
- テンプレートの CSS スタイル
- テンプレートでは、HTML と CSS を好きなように使うことができます。しかしながら、WordPress テーマ構造 (Site Architecture 1.5 参照) に従うことが推奨されています。こうすることで、利用する人にとって、あなたのテーマが理解しやすくなるでしょう。
テンプレートファイルの参考資料
テンプレートについての詳細な参考資料のリストは、テンプレート を参照してください。Category:テンプレート および Category:テンプレートタグ の他のドキュメントも参考にしてください。