フリーランス|WEB 制作経験丸7年、制作会社様からのご依頼に丁寧・高クオリティでお手伝いいたします。 IRODORI DESIGN

B L O G

【WordPress】サイドバーを読み込む関数「get_sidebar()」解説

get_sidebar()
WordPress
サイドバー
関数

こんにちは、岐阜・名古屋を拠点に全国各地からご依頼いただくWEBサイトを制作しているフリーランスエンジニアの寺井です。

WordPressではヘッダーやフッターなどサイトの共通部分はひとつのファイルにまとめることが一般的な開発手順となっています。
今回の記事ではサイドバーにスポットを当てて、別ファイルに切り分けたサイドバー部分のHTMLを各ページに読み込む方法をご紹介します。

基本的な使用方法

テーマ内にあるsidebar.phpをpage.phpやindex.phpなどで読み込む場合、WordPressの独自関数として定義されているget_sidebar()関数を使用します。

使用方法は以下の通りです。

<?php get_sidebar(); ?>

これで同じテーマ内にあるsidebar.phpを読み込むことが出来ます。

応用した使用方法

続いてget_sidebar()関数の少し応用した使用方法を見てみましょう。
get_sidebar()関数は以下のように定義されていて引数を2つ渡すことが出来ます。

get_sidebar( $name = null, $args = array() )

それぞれの引数は以下のようになっています。

  • $name:読み込むサイドバーテンプレートの名前を指定できます。
  • $args:変数を配列としてサイドバーテンプレートに渡すことが出来ます。

複数のサイドバーファイルを使い分ける

仕様によっては複数のサイドバーを使い分ける必要があるかもしれません。
この場合、以下のように複数のサイドバーファイルを用意します。

  • sidebar.php
  • sidebar-recruit.php

sideber-recruit.phpを読み込む場合、以下のようにget_sidebar()関数を使用します。

<?php get_sidebar('recruit'); ?>

これで同じテーマ内にあるsidebar-recruit.phpを読み込むことが出来ます。
引数を指定しなければ、sidebar.phpを読み込むことが出来ます。

サイドバーに引数を渡す

仕様やカスタマイズ内容によってはsidebar.phpに引数を渡したい場合もあるかもしれません。
この場合、以下のように引数を指定することでsidebar.phpに引数を渡すことが出来ます。

サイドバーを読み込む側は以下のように記述し引数を渡します。

<?php
$args = [
    'name' => 'site-name',
];
get_sidebar('', $args);
?>

サイドバー側では以下のように記述し受け取った引数を表示します。

<?php echo $args['name']; ?>

この機能がWordPress5.5から追加され、開発やカスタマイズが格段に行いやすくなりました。

まとめ

今回の記事ではWordPressでサイドバーテンプレートを読み込む方法をご紹介しました。WordPressでWEB制作をする場合、必ず使用する関数なので、どんな機能があり、どのように使用するのか予め把握しておきたいですね。