もともとは固定ページと投稿ページで違うサイドバーにしたい程度だったけれど、
プラグインを探してみたら、
もっと細かく、ページごとにウィジェットの表示・非表示を指定できるものが
たくさんあることがわかった。
最初はチェックボタンで選ぶだけの「Display Widgets」というプラグインを気に入って使っていたのだけど、最新版に悪意あるハッキングコードが含まれていたとのことで、WordPress公式から削除されてしまった。
というわけで、「Display Widgets」を入れる前に比較検討したものの
条件分岐の指定が面倒そうに思えて却下した「Widget Logic」に乗り換えてみた。
使ってみると、条件分岐はちっとも面倒でなく、むしろ明快ですっきり???
「Widget Logic」のプラグインを有効化したら、
いつものウィジェットの枠の中に「ウィジェットのロジック」という欄ができているので
そこに条件を入れて保存するだけ✨
例えば、カレンダーウィジェットを
投稿トップと投稿ページとアーカイブページに表示させたい時は以下のような指定。
↓
◆条件指定のしかた
サイトトップ・投稿トップをそれぞれ固定ページにしている場合
is_home()-----投稿トップページ
!is_home()-----投稿トップページ以外
is_front_page() -----サイトトップページ
!is_front_page()-----サイトトップページ以外
サイトトップ=最新の投稿 にしている場合 (以下、どちらの書き方でもOK)
is_home()-----トップページ
!is_home()-----トップページ以外
is_front_page() -----トップページ
!is_front_page()-----トップページ以外
※条件の前に「!」をつけると、「~以外」という意味になる。
is_page() -----すべての固定ページ
is_single() -----すべての投稿ページ
is_mobile() -----スマホ・タブレット
is_page(1)-----特定の固定ページ(1などページIDを指定)
is_single(1)-----特定の投稿ページ(1などページIDを指定)
※ページIDは、そのページの編集時のURLの中の post= の数字の部分。
is_page(array(1,3,5))-----特定の複数固定ページ(1,3,5など、ページIDを指定)
is_single(array(2,4,6))-----特定の複数投稿ページ(2,4,6など、ページIDを指定)
is_archive()-----アーカイブページ
is_category()-----カテゴリーページ
※条件を組み合わせて使いたい時は…
または の時は || で条件をつなぐ。
かつ の時は && で条件をつなぐ。
コメント