• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「関数リファレンス/get template part」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(最新英語版を反映。一部未翻訳です。)
1行目: 1行目:
{{CheckTrans}}
 
 
{{テンプレートタグガイド|PHP}}
 
{{テンプレートタグガイド|PHP}}
  
5行目: 4行目:
 
== 説明 ==
 
== 説明 ==
 
</div>
 
</div>
(ヘッダー、サイドバー、フッター以外の)テンプレートパーツをテンプレートに読み込みます。Makes it easy for a theme to reuse sections of code and an easy way for [[Child Themes|子テーマ]] to replace sections of their parent theme.
+
テンプレートパーツ (ヘッダー、サイドバー、フッター以外) をテンプレートに読み込みます。これにより、テーマがコードのセクションを再利用すること、また[[Child Themes|子テーマ]]が親テーマのセクションを置き換えることが容易になります。
  
テーマのその名前のテンプレートパーツを[[インクルードタグ|インクルード]]します。name を指定した場合は、特定の部分をインクルードします。<tt>{slug}.php</tt> ファイルが無い場合は、インクルードしません。
+
テーマのその名前のテンプレートパーツを[[インクルードタグ|インクルード]]します。name が指定された場合は、特定の部分をインクルードします。テーマに<tt>{slug}.php</tt> ファイルが無い場合は、インクルードしません。
  
 
パラメータに関しては、"{slug}-{name}.php" を呼び出します。
 
パラメータに関しては、"{slug}-{name}.php" を呼び出します。
30行目: 29行目:
 
=== 子テーマで loop.php を使用する ===
 
=== 子テーマで loop.php を使用する ===
 
</div>
 
</div>
テーマフォルダが wp-content/themes で、親テーマが twentyten で、子テーマが ''twentytenchild'' の場合、 次のコード --
+
テーマフォルダが wp-content/themes、親テーマが twentyten、子テーマが ''twentytenchild'' である場合、以下のコードが、
  
 
  <?php get_template_part( 'loop', 'index' ); ?>
 
  <?php get_template_part( 'loop', 'index' ); ?>
  
これはファイルを順に [http://www.php.net/manual/en/function.require.php PHP require()] します。
+
下記の優先順でPHP関数の[http://www.php.net/manual/en/function.require.php require()]を実行します。
 
:#''wp-content/themes/twentytenchild/loop-index.php''
 
:#''wp-content/themes/twentytenchild/loop-index.php''
 
:#''wp-content/themes/twentytenchild/loop.php''
 
:#''wp-content/themes/twentytenchild/loop.php''
40行目: 39行目:
 
:#''wp-content/themes/twentyten/loop.php''
 
:#''wp-content/themes/twentyten/loop.php''
 
   
 
   
 +
 +
<div id="Using_with_theme_subfolders">
 +
=== テーマサブフォルダの使用 ===
 +
</div>
 +
テーマディレクトリ内のサブフォルダでこの関数を使用するためには、単純にフォルダ名を[[用語集#.E3.82.B9.E3.83.A9.E3.83.83.E3.82.B0|スラッグ]]の前に追加するだけです。例えば、"partials"というフォルダーがテーマディレクトリ内にあり、"content_page.php" というテンプレートパーツがそのサブフォルダにある場合、get_template_part() を以下のように用います:
 +
<?php get_template_part( 'partials/content', 'page' ); ?>
 +
  
 
<div id="Navigation">
 
<div id="Navigation">
 
=== ナビゲーション ===
 
=== ナビゲーション ===
 
</div>
 
</div>
一般 nav.php テンプレートファイルを使用してナビゲーションバーをテーマに追加します。
+
一般的な nav.php テンプレートファイルを使用してナビゲーションバーをテーマに追加します。
  
 
  <?php get_template_part( 'nav' );          // Navigation bar (nav.php) ?>
 
  <?php get_template_part( 'nav' );          // Navigation bar (nav.php) ?>
65行目: 71行目:
  
 
{{原文|Function Reference/get_template_part|123220}}<!-- 11:56, 16 November 2012 Alchymyth 版 -->
 
{{原文|Function Reference/get_template_part|123220}}<!-- 11:56, 16 November 2012 Alchymyth 版 -->
 +
 +
<div id="External_resources">
 +
== 外部リソース ==
 +
</div>
 +
* [http://kovshenin.com/2013/get_template_part/ get_template_partを理解する(英語)] by Konstantin Kovshenin
 +
  
 
<div id="Related">
 
<div id="Related">

2013年6月1日 (土) 16:43時点における版

テンプレートパーツ (ヘッダー、サイドバー、フッター以外) をテンプレートに読み込みます。これにより、テーマがコードのセクションを再利用すること、また子テーマが親テーマのセクションを置き換えることが容易になります。

テーマのその名前のテンプレートパーツをインクルードします。name が指定された場合は、特定の部分をインクルードします。テーマに{slug}.php ファイルが無い場合は、インクルードしません。

パラメータに関しては、"{slug}-{name}.php" を呼び出します。

使い方

<?php get_template_part( $slug, $name ); ?>

パラメータ

$slug
文字列) (必須) 一般テンプレートのスラッグ名
初期値: なし
$name
文字列) (オプション) 特定テンプレートの名前
初期値: なし

用例

子テーマで loop.php を使用する

テーマフォルダが wp-content/themes、親テーマが twentyten、子テーマが twentytenchild である場合、以下のコードが、

<?php get_template_part( 'loop', 'index' ); ?>

下記の優先順でPHP関数のrequire()を実行します。

  1. wp-content/themes/twentytenchild/loop-index.php
  2. wp-content/themes/twentytenchild/loop.php
  3. wp-content/themes/twentyten/loop-index.php
  4. wp-content/themes/twentyten/loop.php


テーマサブフォルダの使用

テーマディレクトリ内のサブフォルダでこの関数を使用するためには、単純にフォルダ名をスラッグの前に追加するだけです。例えば、"partials"というフォルダーがテーマディレクトリ内にあり、"content_page.php" というテンプレートパーツがそのサブフォルダにある場合、get_template_part() を以下のように用います:

<?php get_template_part( 'partials/content', 'page' ); ?>


一般的な nav.php テンプレートファイルを使用してナビゲーションバーをテーマに追加します。

<?php get_template_part( 'nav' );           // Navigation bar (nav.php) ?>
<?php get_template_part( 'nav', '2' );      // Navigation bar #2 (nav-2.php) ?>
<?php get_template_part( 'nav', 'single' ); // Navigation bar to use in single pages (nav-single.php) ?>

変更履歴

ソースファイル

get_template_part()wp-includes/general-template.php にあります。

最新英語版: WordPress Codex » Function Reference/get_template_part最新版との差分

外部リソース


インクルードタグ: get_header(), get_footer(), get_sidebar(), get_template_part(), get_search_form(), comments_template()


関数リファレンステンプレートタグ目次もご覧ください。