サイドバー(ウィジェット)の追加/登録方法|WordPress

WordPressのサイドバーを、固定ページ、アーカイブ、ブログ毎に分けたい時ありますよね!そのような時、ウィジェットに新しくサイドバーを追加/登録する方法をご紹介します!
僕は、テーマにtwentyseventeenのchildを使っています。今回、ブログ用のサイドバーを作りたいので、この設定に準じて説明させていただきます。

ウィジェットにサイドバーを追加するためには、次のステップを踏みます。

sidebar.phpをコピーしてsidebar-blog.phpを作る

まずは、sidebar-blog.phpを作ります。
もともとの親テーマにある、sidebar.phpをコピーし、childのフォルダに保存して使えば良いので、超簡単です!

  • sidebar.phpをコピーして、sidebar-blog.phpを作ります。-(ハイフン)後の名前は、任意です。用途に応じて決めれば良いでしょう。
  • is_active_sidebar()の引数を、functions.phpのregister_sidebarで登録するidに合わせます。’sidebar-4’としています。
  • dynamic_sidebar()の引数も’sidebar-4’とします。こちらも上記のidと同じです。

sidebar-blog.phpの内容です。

function.phpの編集


resister_sidebar()で、サイドバーを登録します。twentyseventeenのfunction.phpに、既存のサイドバーを登録している部分がありますので、こちらをコピーしてchildのfunction.phpに下記のように記載しました。変更した部分は、’name’と’id’だけです。そのほかのパラメータは、必要に応じて変更すれば良いと思います。


  • nameを、任意の名前にします。Sidebar blogとしています。twentyseventeenの翻訳ファイルに無いと思うので、そのまま表示されると思います。
  • idを、sidebar-4とします。なんでも良いのですが、わかりやすいものが良いでしょう。

function.php(childテーマ)内の記述

single.phpの編集


ブログ(投稿)のテンプレートは、single.phpに書かれていますので、こちらを編集します。親テーマからコピーしてきます。名前はそのままでOKです!

  • get_sidebar()の引数を”blog”にする。サイドバーのファイル、sidebar-blog.phpの、-(ハイフン)の後の名前を使います。

single.php内の記述

以上のことをすれば、ウィジェットに自分が登録したサイドバーが表示されていると思います。

まとめ

ウィジェットは、サイドバーに限らず様々な使用方法がありますので、勉強してご紹介していければと思っています!
今日も、訪問してくださり誠にありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です