GoogleAdSenseの表示非表示
最近wordpressも随分進化してきて、昔は難題であったAdSenseや広告などの条件分岐(カテゴリや記事ごとに表示、非表示させる)も随分楽になってきました。
当サイトが使っているSimplicity2などのテーマは、デフォルトで様々な条件分岐機能がついていたり、TCDテーマなどでもショートコードが実装されてたり、随分便利になりましたね。
しかしそれは多くはサイドバーであったりヘッダーやフッターなどのウィジェット、記事内でショートコードをうまく使った仕様となっています。
しかしAdSenseの関連コンテンツは、記事下に入れたい方が多いと思うので、Simplicity2では細かい設定ができるのでいけるかもしれませんが、他のテーマだとそこまでウィジェット内だけでの設定は厳しいパターンが多いと思います。
それで、直接single.phpなどのファイルをいじる事になるわけですが、そこでのうまい条件分岐を入れてみました。
カスタムフィールドで条件分岐する。
カスタムフィールドをうまく使って分岐します。
例えば「noads」という名前のカスタムフィールドを新規追加で作ります。
管理画面の下の方にカスタムフィールドの追加欄があるので、そこでこのように新規追加します。
値は0を入れておく。
そして任意のファイル(single.phpなど)にこのように追記します。
<!--?php if(!$noads = get_post_meta($post->ID, 'noads', true)): ?-->
アドセンスコード
<!--?php endif; ?-->
そして、関連コンテンツを表示させたくない記事を編集する時に、またカスタムフィールドに戻って作った「noads」を選択し、値を「1」と入力します。
そうするとさっきのコードが動いてAdSenseコードが表示されなくなる仕様です。
使い方によっては他にも様々な用途や場所で使えると思います。
これは随分前にも、他のサイトで書いたことがあるのですが、随分時間が経ったのでまた追記しておきます。
参考サイトはこちらになります。
うまく動いた例
こちらでうまく動いているのが確認できます。私の漫画のちょっと肌が露出している系の記事だけ関連コンテンツを表示させないようにしました。他の記事と見比べてみてください。
他のサイドバーやウィジェットで条件分岐で使えるプラグイン
最も有名なのはWidget Logic(ウィジェット ロジック)ですね。これで殆どはカバーできると思うのですが、このサイトのテーマSimplicity2では相性が良くないと言われていたり、私は他のサイトはTCDのテーマを使っているのですが、そこでも相性が悪いのかうまく作動しませんでした。非表示の「!」がうまく動かない感じです。
そして色々探したのですが、WooSidebarsという条件分岐のプラグインはうまく作動しました。正直いうと、WidgetLogicよりこっちの方が使いやすかったですね。
かなり細かくカテゴリからタグから記事から、ウィジェットに関してはなんでもうまく条件分岐できますね。
使い方に関してはこちらで詳しく書かれているので是非参考にしてみてください。
コメント