Widget Logicの使い方:ウィジェットの表示・非表示を条件分岐で指定

Widget Logic

プラグインWidget Logicの設定と使い方をまとめています。

WordPressで使える条件分岐タグを利用して、指定したページでのみウィジェットを表示させたり、スマホ画面でのみウィジェットを非表示にすることができるプラグインです。ページごと及びデバイスごとにウィジェットの表示・非表示を管理したい時に使うと便利です。

目次

設定と使い方

プラグインを有効化すると、ウィジェットに専用項目「ウィジェットのロジック」が追加されます。

ウィジェットのロジック

ここに条件分岐タグを入力してウィジェットの表示を制御します。

条件分岐タグ - WordPress Codex

ログイン中のユーザーに表示

対象条件分岐タグ
ログインユーザーis_user_logged_in()
※条件分岐タグの使用例

特定のページで表示

特定のページでのみウィジェットが表示されます(それ以外のページでは非表示)。

対象条件分岐タグ
トップページis_front_page()
投稿is_single()
固定is_page()
アーカイブis_archive()
カテゴリーアーカイブis_category()
タグアーカイブis_tag()
日付アーカイブis_date()
検索結果is_search()
404 Not Foundis_404()
プレビューis_preview()
スマホ・タブレットwp_is_mobile()
※条件分岐タグの使用例

特定のページで非表示

条件分岐タグの先頭に!を付けると非表示になります。

対象条件分岐タグ
ログインユーザーは非表示!is_user_logged_in()
トップページで非表示!is_front_page()
プレビューで非表示!is_preview()
スマホで非表示!wp_is_mobile()
※条件分岐タグの使用例

指定したページで表示

投稿・固定ページ・カテゴリー・タグの「ID(スラッグ)」を入力します。

対象条件分岐タグ
投稿is_single( '1' )
固定ページis_page( '2' )
カテゴリーアーカイブis_category( '3' )
タグアーカイブis_tag( '4' )
※条件分岐タグの使用例

複数指定する場合は記述方法が若干異なります(「,」で区切って追加)。

対象条件分岐タグ
複数指定(ID)is_single( array( 5, 6, 7 ) )
複数指定(IDとスラッグ)is_single( array( 8, "wordpress", "plugin" ) )
※条件分岐タグの使用例

いずれかのページが表示されている時にウィジェットが表示されます。

カテゴリー及びタグに属する投稿で表示

カテゴリー及びタグの「ID(スラッグ)」を入力します。

対象条件分岐タグ
カテゴリーに属する投稿in_category( '9' )
タグに属する投稿has_tag( '10' )
※条件分岐タグの使用例

複数指定する場合の記述は先ほどと同じです。

対象条件分岐タグ
複数指定(ID)in_category( array( 11, 12, 13 ) )
複数指定(IDとスラッグ)has_tag( array( 14, 15, "swell" ) )
※条件分岐タグの使用例

いずれかのカテゴリー及びタグに属する記事が表示されている時にウィジェットが表示されます。

複数の条件分岐の組み合わせ

複数の条件分岐を同時に指定する時は、「または||」及び「かつ&&」で追加します。

対象条件分岐タグ
投稿または固定ページis_single() || is_page()
アーカイブページかつカテゴリアーカイブは除くis_archive() && !is_category()
※条件分岐タグの使用例

Widget Logic 設定

管理画面の外観「ウィジェット」の下部に追加された設定項目からは、読み込みロジックの変更と、ウィジェットに設定したデータをエクスポート・インポートすることができます。

Widget Logic 設定

他のプラグインやテーマの影響で上手く動作しない時は、読み込みロジックを変更してみて下さい。

最後に

そこまで複雑な条件分岐タグを使うことはないと思いますが、カテゴリーごとに表示させるウィジェットを切り替えたり、プレビュー画面でウィジェット広告を非表示にしたい時に使うと便利です。

今日の一言

2024年3月6日からGoogleのコアアップデートが始まりました。今回は長めの調整でまだ完了していません。このブログは、3月16日時点では確実にマイナス方向。雑記ブログが被弾しているのかと思いきや、僕にとって優良な記事を配信している特化型ブログも複数被弾しているので、一部の個人ブログが被弾しているといった感じ。なんとなくドメイン単位でフィルターをかけられているような気がします。捕捉されると、どんな記事を書いても中途半端な順位までしか上がらない。加えて、一部の記事が大幅に下落する傾向。

コメント

コメントする

目次