CSSで非表示にする位ならwp_is_mobile()等を使って広告そのものを読み込まないようにした方が通信速度も向上して非固定回線環境に優しいと思いますが・・・
関数リファレンス/wp is mobile
ただ、上手くやらないとタブレットも対象になるので非表示に関してはCSSの方が確実ではありますが。
どのように考えてますか?
確実にスマホのみですか?
こんにちは
ad1の「パソコン表示以外の時は、.ad1(レスポンシブ)の表示を」消すなら
@media (max-width: 768px) {
ではないんでしょうか。
ad3は私のスマホでは消えています。
こんにちは、
テストは行っていないのですが、例えば CSSでdisplay:noneにしておいて、jqueryなんかで読み込みを完了したら show() するって処理は時々行われると思うんですけど、
読み込み順の関係で、display:noneが効かなくなっている可能性があるかもしれませんね。
なので、display:none以外の方法
スクリーンリーダー用の要素などに使う以下のような方法
position: absolute;
clip: rect(1px, 1px, 1px, 1px);
overflow: hidden;
とか、
javascriptで、非表示にする方法を試してみるといいかも、
こんにちは
.ad1 はコンテンツ上部に配置されている広告で、スクリーンショットで .ad1 と表記されているのはテキストウィジェット(#text-10)に配置されている広告ではないでしょうか?
消したい広告とは、このテキストウィジェットの広告でしょうか?
@ishitaka さん。
いつもコメントありがとうございます。
>テキストウィジェット(#text-10)に配置されている広告ではないでしょうか?
>消したい広告とは、このテキストウィジェットの広告でしょうか?
ご指摘の通り、消したい広告というのは、.ad1ではなく#text-10でした。Chrome developerツールで改めて確認すると私のコメントが間違っていました。アドバイスありがとうございます。
その上で、
@media (max-width: 768px) {
#text-10 {
display: none;
}
}
とすると従前ではスマホにおいて「広告ユニット → テキストウィジェット(#text-10)広告 → 「おすすめ記事」」と表示されていた状態が、「広告ユニット → (表示なし)→「おすすめ記事」」の状態になり、意図通りの表示になりました。
ただここで「テキストウィジェット(#text-10)広告」の表示を消すという行為は、Google AdsenseのポリシーとしてOKなのかどうか疑問に思うようになってきました。
とりあえず上記のコードをstyle.cssに追記していますが、コメントアウトにしてスマホにおける「テキストウィジェット(#text-10)広告」はあえて表示させています。
https://github.com/echizenyayota/e-yota/blob/personal_lesson_20171012/wp-content/themes/mytheme/style.css#L1039-L1044
Google Adsenseのヘルプフォーラムで、「テキストウィジェット(#text-10)広告」の非表示の可否について質問して、そのアドバイスに従ってを表示・非表示の運用を決めたいと思います。
的確なアドバイスありがとうございます。今後ともどうぞよろしくお願いします。
@manbo さん。
コメントありがとうございます。
>CSSで非表示にする位ならwp_is_mobile()等を使って広告そのものを読み込まないようにした方が
wp_is_mobile()関数のご紹介ありがとうございます。はじめて知りました。
>どのように考えてますか?
>確実にスマホのみですか?
スマホ表示の時のみ確実に非表示にしたいと考えています。タブレットの時は表示ができるようにしたいと思っていますので、CSSで表示・非表示の調整をするつもりです。
ただ、先に @ishitaka さんに回答したようにCSSの観点からは解決したものの、Google Adsenseのポリシー的に疑問に思うことがあります。従ってこれから先の質問については、Google Adsenseのヘルプフォーラムで質問をするようにします。
これからもどうぞよろしくお願いします。
@munyagu さん。
いつもコメントありがとうございます。順不同ですが、いただいたコメントについて回答いたします。
– .ad3について
>ad3は私のスマホでは消えています。
日中に知人のスマホ(Nexus)と自分のスマホ(ASUS)で確認しました。 @munyagu さんがおっしゃるように.ad3の広告表示は消えていました。
– .ad1について
自分が.ad1だと思っていたクラスは @ishitaka さんからご指摘をいただいたように、#text-10のidでした。このidを操作することによって、表示・非表示の操作ができるようになりました。
ですが、#text-10の表示・非表示については、WordPressフォーラムで質問する域を超えていると思いますので、今回のトピックスは「解決ずみ」とさせていただきます。
これからもどうぞよろしくお願いします。
@nobita さん。
いつもアドバイスありがとうございます。
>スクリーンリーダー用の要素などに使う以下のような方法とか
>javascriptで、非表示にする方法を試してみるといいかも、
CSS以外でも要素を消せる方法があることについて教えていただきありがとうございます。「スクリーンリーダー用の要素」という言葉自体を知らなかったので、今後の参考にします。
とりあえず他のみなさまのアドバイスのおかげで、自分の意図する表示はどうすれば良いか分かりました。Google Adsenseのポリシー的にどうすべきかという問題が残りましたので、Adsenseのヘルプフォーラムで確認するようにします。
これからもどうぞよろしくお願いします。