Widget Logic でウィジェットの表示をページ毎に変更可能!柔軟性抜群!

20151028-widget-logicWidget Logic
20151028-widget-logic
この記事は約12分で読めます。

Widget Logic でウィジェットの表示をページ毎に変更可能!柔軟性抜群!

2016/07/09更新/追記
このプラグインでウィジェット表示をページ毎にチェンジする為に使用していましたが
2016年6月のサーバー移転の際に削除しました。
現在代替として、「Display Widgets」を使用しています。
ウィジェットの表示をページ毎に変更! 非表示設定も簡単!Display Widgetsの使い方
ウィジェットを指定条件で表示切り替えが出来るDisplay Widgetsページ毎のウィジェットの表示・非表示を自在にコントロールしてより良いクールなサイトに!! わざわざ条件分岐タグを記入せずに済みます。

こちらの方が使いやすいと思います。

最近ウィジェット関係のプラグインあさりもしている私😁

映画の記事を書き始めた時に、
サイドバーに映画関連のリンクやコンテンツをおきたいと思っていました。

思い描いていた事は、日記等々の普通のブログ記事の一覧では通常の状態で、
例えばwordpress関連の記事の場合は、その関連。
そして、映画の記事の場合は、映画関連のものだけ表示する。と言った感じです。

果たして、そんな我儘な事が可能なのか? まぁ、まだ急ぎはしないし…。

なんて思っていたところ、
またまた、わいひらさんのフォーラムで気になる書き込みを発見!!

widget-logic_0

ここで質問されている方、結構な頻度でフォーラムで質問をされているようなので、
見掛けるとつい、ロムってしまうのですが、本題の広告云々には興味がなく
Widget Logicと組み合わせてウィジェットを利用するしかないかもしれません。
この⇑わいひらさんが提案されていた一文が気になり、リンク先を辿りみてみた👀

おお~!! コレ、絶対私が思い描いている事を叶えてくれるわ~😆

(ホント、わいひらさんの所のフォーラムって、私がしたい事のヒントが沢山💮

で、早速使ってみましたよ。コレは将来的に活躍してくれそうなプラグインです😋

って事で今回は、WordPressのウィジェットを柔軟に使えるプラグイン、
Widget Logic についてお薦めプラグインとしてレビューしたいと思います。

超柔軟なプラグイン Widget Logic どういうシーンで使えるか? 

以下のような我儘に対応できるプラグインです。

  • 記事の内容に併せたサイドバーの表示
  • 固定ページと投稿ページでウイジェット表示を変えたい
  • 広告ウイジェットを特定のエントリーだけ表示させたい
  • スマホとPCでウィジェットの表示を変えたい
  • スマホでの読み込み速度を上げる為にウィジェットを表示したくない
  • 404ページでサイドバーを出さない

・・・等々。あてはまる使い道が結構あると思います。

どういった場合に表示するか、しないか。を指定するのは、
最終的には、各々の用途に因って様々だと思いますが、ざっとこんな感じで使えると思います。

Widget Logic の使い方

Widget Logic

Widget Logic

Widget Logicをダウンロードして有効化する

https://ja.wordpress.org/plugins/widget-logic/
上記 ページでバージョン 0.5.7 をダウンロードし
ZIPファイルをWordpressに上げて有効化します。

ダッシュボード  icon-arrow-right  プラグイン    新規追加 プラグインのアップロード
参照でファイルを選択し ZIPファイルをアップロード。
この流れで有効化するか、
ダッシュボード プラグイン 新規追加
プラグインの検索(画面右上)で「Widget Logic」 と入力、
検索で上がってきたものをインストールし有効化します。

設定~という設定は無し。デス😏 有効化するだけです。
有効化するだけのお手軽さ(私、コレ好き😊)

設定メニュー等の項目は表示されません。

有効化後のウィジェットの管理画面

利用する際は、外観 icon-arrow-right ウィジェットをクリックしてウィジェットの管理画面に行きます。

ウィジェット画面の一番下に注目して下さい。
Widget Logic optionsという設定項目があります。

Widget Logic options 設定項目

Widget Logic options 設定項目

ここはデフォルトのままで使えます。

ですが、レビューなんで、一応記しておきます。

Widget Logic Options の設定について

先程も書いたように、何も設定しなくても使えます
Widget Logic は、オプション設定が出来ます。

フィルタを追加するオプションなんですが、
これはプラグインやコードを編集せずに使用しているテーマに合わせて
任意のウィジェットのHTMLを調整することができるというものです。

widget-logic_3
Add 'widget_content' filterUse 'wp_reset_query' fix
 追加フィルターテーマ毎のHTML調整
  修正機能(すいません、この部分イマイチ理解できていません)

また、Load Logicをクリックすると、以下の様なドロップダウンメニューが現れます。

widget-logic_4
widget-logic_5

これは、Widget Logicが正常に機能しない場合の選択です。(使用テーマのfunction.phpに依存するもの)

when plugin starts(default)after theme loadswhen all php loadeddurrin page header
 標準(デフォルト)
 テーマをロードした時 
phpをロードした時
ページのヘッダー読み込み

と、ざっと説明のみに終始しましたが、

Simplicityと相性の悪いWordPressプラグインまとめ
Simplicityには、併せて使用すると相性の悪いプラグインがいくつかあるので、ここにまとめておきます。以下は、これまで併用したことで不具合が確認されたプラグインの例です。photo by Javier Arocheファイルキャッシュを作

⇑この記事も気になったので、私の環境で弄ってみましたが、
関数に関するような設定をしていない為か、動的な変化は特にありませんでした。
なので、何も設定しなくても良いと思っています。

将来的にfunction.phpを弄った時にエラーがでましたら、この記事を更新する等したいと思います。
因みに、説明は不要と思いますが、

widget-logic_6 

設定のエクスポートとインポートが可能です。

Widget Logic の条件分岐フィールドにコードを入れ表示を変える

では、実際に指定コードを入れてみましょう。

各ウイジェットの下に「Widget Logic」の欄が表示されます。

「Widget Logic」の欄

「Widget Logic」の欄

このWidget Logicの欄に自分が表示させたい場所の指定をしてやればOK😊

私の場合は、映画の記事を書き始めてから本格的に使おうと思っているので、
ここでは、取り合えずトップページのサイドバーにだけ自己紹介を表示する事にしました。

サイドバーの先頭に置いていたテキストウィジェットを開き
is_home()“という、『トップページのみ表示』という条件を指定するコードを入れました。

widget-logic_7

Widget Logicの欄に”is_home()”という
『トップページのみ表示』という
条件を指定するコードを入れた。

現時点(2015/10/28)で、サイドバーの自己紹介表示はトップページのみに表示されています。

widget-logic_8

サイドバーの自己紹介表示
2015/10/28時点で
トップページだけに表示

試しに、トップページ以外の頁にアクセスしてみて下さい。
(っていうか、この頁のサイドバーにはないでしょ?)

この様に、
Widget Logicは、WordPressの条件分岐コードを使うことができます。

Widget Logic 基本的なで使用する 条件分岐コード

取り合えず、一般的に使えそうなコードを書いておきますので、
コピペして使って下さい。

カテゴリー 

is_category()カテゴリーページのみ表示する
is_category( ’20’ ) カテゴリーIDが 20 のカテゴリーページのみ表示

カテゴリーIDの確認方法
投稿一覧画面のタイトルにマウスを合わせるとブラウザーの下部に表示されます。
ID=〇〇の部分

タグ 

is_tag()タグページのみ表示する

トップページ

is_home()トップページのみ表示する
!is_home()トップページ以外で表示する

(条件の前に「」をつけると「それ以外」という意味になります)

固定ページ

is_page()固定ページのみ表示する
is_page( ’42’ )  特定の固定ページ(ページID指定)のみ表示する
is_page( ‘sitemap’ )特定の固定ページ(スラッグ指定)のみ表示する

is_page( array( 42, 54, 6 ) )

特定の固定ページ(ID複数指定)のみ表示する

投稿ページ(ブログ記事)

is_single()投稿記事ページのみ表示する
!is_single()投稿記事ページ以外で表示する
is_single( ’17’ ) 特定の投稿記事(記事ID指定)のみ表示する
is_single( array( 17, 19, 1, 11 ) )  特定の投稿記事(複数記事ID指定)のみ表示する

(条件の前に「」をつけると「それ以外」という意味になります)

投稿ID(記事ID)の確認方法
①記事の編集画面の上部のPOST=〇〇〇の部分
②投稿一覧画面のタイトルにマウスを合わせるとブラウザーの下部に表示されます。
POST=〇〇〇の部分

アーカイブ

is_archive() アーカイブ全般に表示する
is_author()  投稿者のアーカイブページのみ表示する
is_date()  日付アーカイブページのみ表示する
is_post_type_archive()カスタム投稿タイプのアーカイブのみ表示する

 

モバイル環境(スマホ・タブレット)

is_mobile()  スマホ、タブレットの時のみ表示
!wp_is_mobile() スマホ、タブレットには表示させたくない場合

(条件の前に「」をつけると「それ以外」という意味になります)

検索結果ページ

is_search() 検索結果ページのみ表示する

 

まとめてコピペ

ご自身のPCのメモ帳等に貼り付けて使って下さい。
■カテゴリー

is_category()   カテゴリーページのみ表示する
is_category( ’20’ )   カテゴリーIDが 20 のカテゴリーページのみ表示
※カテゴリーIDの確認方法
投稿一覧画面のタイトルにマウスを合わせるとブラウザーの下部に表示されます。
ID=〇〇の部分

■タグ

is_tag()   タグページのみ表示する

■トップページ

is_home()   トップページのみ表示する
!is_home()   トップページ以外で表示する
(条件の前に「!」をつけると「それ以外」という意味になります)

■固定ページ

is_page()   固定ページのみ表示する
is_page( ’42’ )   特定の固定ページ(ページID指定)
is_page( ‘sitemap’ )    特定の固定ページ(スラッグ指定)
is_page( array( 42, 54, 6 ) )    特定の固定ページ(ID複数指定)

■投稿ページ(ブログ記事)

is_single()   投稿記事ページのみ表示する
!is_single()   投稿記事ページ以外で表示する
is_single( ’17’ )    特定の投稿記事(記事ID指定)
is_single( array( 17, 19, 1, 11 ) )    特定の投稿記事(複数記事ID指定)
(条件の前に「!」をつけると「それ以外」という意味になります)
※投稿ID(記事ID)の確認方法
①記事の編集画面の上部のPOST=〇〇の部分
②投稿一覧画面のタイトルにマウスを合わせるとブラウザーの下部に表示されます。
POST=〇〇の部分

■アーカイブ

is_archive()   アーカイブ全般
is_author()   投稿者のアーカイブページのみ表示する
is_date()   日付アーカイブページのみ表示する
is_post_type_archive()   カスタム投稿タイプのアーカイブのみ表示する

■モバイル環境(スマホ・タブレット)

is_mobile()   スマホ、タブレットの時のみ表示
!wp_is_mobile()  スマホ、タブレットには表示させたくない場合
(条件の前に「!」をつけると「それ以外」という意味になります)

■検索結果ページ

is_search() 検索結果ページのみ表示する

その他、条件分岐タグについては、
WordPress Codex日本語版(条件分岐タグ)の頁を参考にして下さい。

まとめ

如何でしたでしょうか?

このプラグインを使えば
各ページ表示毎に違う表情を持つWEBサイトが出来るようになります。

一つのwordpressで複数のサイトを運営しているかのように魅せる事も
可能かもしれませんね。

更に、条件によってウィジェットを表示・非表示できるプラグイン
「Custom widgets」の存在も知りました。
これも優れたプラグインのようですが、私のこのサイトでは今の所は必要ないので
放置サイトの復活の時にでも考慮したいと思います。

ご閲覧頂きありがとうござます。
お粗末でした。

今回、参考にさせて頂いたサイト⇓

ページの種類ごとで表示するウィジェットを分ける方法
トップページ、カテゴリーページ、記事ページごとで表示したいウィジェットを分けたい場合や、特定の種類のページにはウィジェットを表示させたくない場合があります。 そのような場合は、以下で紹介するどちらかのプラグインを利用してウィジェットの表示対象ページを限定させることができます。 クラシックウィジェットに戻す 以下に紹介す***

&このサイトのリンクを貼っていて下さったわいひらさん
ありがとうございました😌🙏

コメント

タイトルとURLをコピーしました