WordPressでテーマを作成するときは1つのPHPファイルですべてをカバーするようなテーマを作ることはまったくなく、index.php, single.php, page.phpなどいくつかのファイルに分割してページごとにテーマ制作をおこないます。そういったときに必ずといっていいほど使うget_sidebar()はWordPressではインクルードタグと呼ばれget_sidebar()を書いたファイルに対してsidebar.phpをインクルードする関数です。
get_sidebar()について
get_sidebar()は、WordPressで現在有効になっているWordPressテーマのテーマディレクトリの直下にあるsidebar.phpもしくはsidebar-{$name}.phpを読み込みます。
get_sidebar()の仕様
get_sidebar($name);
引数 | 型 | 説明 | デフォルト | 必須 |
---|---|---|---|---|
$name | string | 特定テンプレート名 |
$nameはsidebar.phpに対して追加で名前があるときに指定します。
sidebar.phpについて
sidebar.phpはfunctions.phpで登録したウィジェットエリアを表示するテンプレートファイルになります。index.phpやsingle.phpでget_sidebar()でsidebar.phpを読みこませれば個々のファイルにウィジェット部分のコードを書く必要がなくなります。
get_sidebar()の使い方
get_sidebar()の使い方は以下の通りです。
/* 通常のsidebar.phpをインクルードする */
get_sidebar();
/* sidebar-sample.phpをインクルードする */
get_sidebar('sample');
/* テーマ内にsidebar.phpがない場合は、/wp-includes/theme-compat/sidebar.phpが呼ばれる */
get_sidebar();
get_sidebar()は、sidebar.phpをインクルードします。sidebar.phpを複数作っていて(sidebar.phpとsidebar-secound.phpなど)使い分けをしたい場合は6行目にあるようなget_sidebar()を使ってください。
またget_sidebar()を使っていて、有効になっているWordPressテーマのテーマディレクトリ直下にsidebar.phpがない場合、/wp-includes/theme-compat/sidebar.phpにあるsidebar.phpがインクルードされます。