WordPressでウィジェットエリアを増やす方法

ぜひ読んでほしい方

 ・WordPressサイトを制作または運営している方で、お使いのテーマで用意されているウィジェットエリア以外のところにウィジェットを設置したい方
 ・WordPressでコーディングした経験がある方

2つのファイルにコードを記述

 ウィジェットエリアを増やすには「functions.php」と「ウィジェットを増やしたい箇所の該当のテンプレートファイル」の2つのファイルにコードを記述する必要がありますので、以下で二つのファイルに記述するコードをお示しします。

 なお、WordPressをカスタマイズする際に共通して言えることですが、親テーマを変更するのではなく、子テーマと呼ばれるものを作るやり方を強くすすめます。親テーマを変更した場合、WordPressがバージョンアップしたときにカスタマイズが元に戻ったり、カスタマイズ中に何かしらのミスがあった場合に、最悪の場合に戻せなくなってしまうリスクがあるからです。

functions.phpに記述するコード

functions.phpに記述するコードは以下の通りです。

 register_sidebar()という関数が、平たく言えば「新たなウィジェットを登録する」ための関数です。引数は連想配列の形で与えられます。全部で7つの要素がありますが、後半4つの値は基本的には上のコードのままで大丈夫です。前半3つのうち、nameとdescriptionは以下の画像のように対応していますので、適宜変更してください。idの役割については、後ほど説明します。

ウィジェットエリア

該当テンプレートファイルに記述するコード

 該当テンプレートファイルには、上のコードを新しく登録したウィジェットを表示したい箇所に記述します。つまり、dynamic_sidebar(‘ウィジェットのid’)名は、ウィジェットを出力する関数というわけです。

 そして、この関数の引数には、functions.phpのコードの連想配列のidの値を与えます。これにより、functions.phpで登録したウィジェットと出力するウィジェットが紐づけされたことになります。