[WordPress]任意のファイルのインクルード

get_template_part()というものを最近知った(……)のでメモ~~
wordpress codex

一般的なファイルを読み込む関数

<!-- header.php -->
<?php get_header(); ?>

<!-- footer.php -->
<?php get_footer(); ?>

<!-- sidebar.php -->
<?php get_sidebar(); ?>

<!-- その他任意のファイル -->
<?php get_template_part(); ?>

パラメータ

<!-- header-2.php -->
<?php get_header('2'); ?>

<!-- header-single.php -->
<?php get_header('single'); ?>

get_template_part()はふたつのパラメータを渡すそうです
$slugは必須、……任意のファイルの読み込みなので、そりゃそうかー
また、$slugはテーマディレクトリからテンプレートファイルまでのパスだそうなので、
テーマディレクトリ内でディレクトリ切ってるときは、そのように指定してあげましょう

<!-- slug.php -->
<?php get_template_part('slug'); ?>

<!-- slug-name.php -->
<?php get_template_part('slug','name'); ?>

<!-- テーマディレクトリ内のincというディレクトリのnav-single.php -->
<?php get_template_part('inc/nav','single'); ?>

include()

WordPress4.0.1で確認しましたが、phpのinclude()もふつうに動きました
get_template_part()のほうが簡単に扱えるってだけで、include()が非推奨ということでもなさそう

<?php include('nav.php'); ?>

require(‘../wp-blog-header.php’)

WordPressテーマ外からテンプレートのインクルードタグを使用できるやつですが、
get_template_part()もちゃんと動いてるようです

<?php require('../wp-blog-header.php'); ?>
...
<?php get_header(); ?>
<?php get_template_part('nav'); ?>

コメントする