【WordPress】PCとスマホで表示する要素を自在に操る条件分岐
  • 【WordPress】PCとスマホで表示する要素を自在に操る条件分岐
  • 記事公開:2018/03/08
  • 最終更新:-------------

【WordPress】PCとスマホで表示する要素を自在に操る条件分岐

PCとスマホで表示する要素を自在に操る条件分岐をご紹介します。 レスポンシブデザインのサイトを作る時、知っておくと便利なコードです。 5分で理解できる内容ですので、この機会にマスターしてはいかがでしょうか?

この記事は約 8 分で読めます。

WordPressサイトの常時SSL化はお任せください。

ADhttps://wordpress-supporters.com/wordpress-ssl/

常時SSL化されていないサイトにGOOGLEが警告文を表示させるまであと僅か!
今すぐにでも必要なWordPressサイトの常時SSL化は、プロに丸投げしてください。
今だけ20,000円OFF、GOOGLE対策、リミット間近、サポート充実。

レスポンシブデザインのWEBサイトの場合、以下の様にPCとスマホで表示する要素を代えたいケースが多くあります。

・PCとスマホで表示させる要素を別々にする。
・PCでは要素を表示させるが、スマホでは要素を非表示にする。
・PCでは要素を非表示にするが、スマホでは要素を表示させる。

CSSであれば、メディアクエリを使って「display:none」と「display:block」で要素の表示非表示を操作することができます。デバイスの横幅を基準に、表示非表示を切り替えるやり方ですね。

今回はこれとは別のやり方をご紹介します。
サイトにアクセスしているデバイスを判別して表示非表示を切り替えるやり方です。

PCで観覧している場合は要素Aを表示させるが、スマホなら要素Bを表示させる。
PCで観覧している場合は要素を表示させるが、スマホなら非表示にする。
PCで観覧している場合は要素を非表示にするが、スマホでは要素を表示させる。

WordPressの関数「wp_is_mobile()」を使えば、上記のようにデバイスを判別して要素の表示非表示を切り替えることができます。

やり方を詳しく見ていきましょう。

wp_is_mobile()ってどんな関数なの?

wp_is_mobile()とは、「Mobile」や「Android」のモバイル端末特有の文字列がユーザーエージェントに含まれている場合、モバイルからのアクセスだと判断して条件分岐することができる関数です。

この条件分岐があれば、「モバイルからのアクセスだから○○、それ以外(PC)からのアクセスだから○○」と条件分岐することができます。

wp_is_mobile()は、ユーザーエージェントに以下の文字列が含まれている場合、モバイル端末からのアクセスだと判断します。

  • iPod Touch
  • iPhone
  • iPad
  • Android
  • Kindle
  • BlackBerry
  • Windows Phone
  • Opera Mini
  • Opera Mobile
  • Silk

上記を見ても分かりますが、wp_is_mobile()は「iPad」などのタブレットからのアクセスも、モバイル端末からのアクセスだと判断します。

wp_is_mobile()では、PCとスマホで条件分岐することができますが、PCとタブレットとスマホで条件分岐することはできません。

つまり、PCなら要素A、タブレットなら要素B、スマホなら要素Cという条件分岐はできないということです。

wp_is_mobile()を使ってPCとスマホで要素を自在に操る手順

wp_is_mobile()を使ってPCとスマホで要素を自在に操る方法を詳しく解説していきます。

手順1:wp_is_mobile()をテーマで有効化する

使用中のテーマでwp_is_mobile()が利用できるようにしましょう。
方法は簡単で、以下のコードをfunctions.phpに追記するだけです。

function is_mobile(){
$useragents = array(
'iPhone', // iPhone
'iPod', // iPod touch
'Android.*Mobile', // 1.5+ Android *** Only mobile
'Windows.*Phone', // *** Windows Phone
'dream', // Pre 1.5 Android
'CUPCAKE', // 1.5+ Android
'blackberry9500', // Storm
'blackberry9530', // Storm
'blackberry9520', // Storm v2
'blackberry9550', // Storm v2
'blackberry9800', // Torch
'webOS', // Palm Pre Experimental
'incognito', // Other iPhone browser
'webmate' // Other iPhone browser

);
$pattern = '/'.implode('|', $useragents).'/i';
return preg_match($pattern, $_SERVER['HTTP_USER_AGENT']);
}

手順2:PCとスマホで要素を条件分岐で自在に操ってみる。

ここでご紹介するコードは、テーマファイルの中でしか動作しません。
投稿や固定ページ内で使用したい場合は、後述する説明を確認してください。

PCとスマホで要素を切り替えたい場合

PCとスマホで要素を切り替えたい箇所に、以下のコードを記述します。

<?php if (is_mobile()) :?>
スマホからの観覧時に表示させる内容を記述します。
<?php else: ?>
PCからの観覧時に表示させる内容を記述します。
<?php endif; ?>

PCで観覧している場合は要素を表示、スマホなら非表示にする場合

PCで観覧している場合は要素を表示させるが、スマホなら非表示にする場合は、以下の様なコードを記述します。

<?php if (is_mobile()) :?>
<?php else: ?>
PCからの観覧時に表示させる内容を記述します。
<?php endif; ?>

スマホからの観覧時に表示させるコンテンツを記述しないことで、スマホから観覧した時は何も表示されません。PCから観覧した時は、PCからの観覧時に表示させる内容が表示されます。

PCで観覧している場合は要素を非表示、スマホでは表示する場合

PCで観覧している場合は要素を非表示にするが、スマホでは要素を表示させる場合は、以下の様なコードを記述します。

<?php if (is_mobile()) :?>
スマホからの観覧時に表示させる内容を記述します。
<?php else: ?>
<?php endif; ?>

PCからの観覧時に表示させるコンテンツを記述しないことで、PCから観覧した時は何も表示されません。スマホから観覧した時は、スマホからの観覧時に表示させる内容が表示されます。

まとめ

PCとスマホで表示する要素を自在に操る条件分岐に関してまとめてみました。

レスポンシブデザインのサイトを作る時、よくお世話になるコードです。
スマホの利用者数が増え続けている現在、覚えておいて損のないコードです。

この機会にマスターしてはいかがでしょうか?

今回のコンテンツに関する疑問点、WordPressの操作方法やプラグインに関するご質問など、下記の無料メールサポートからお気軽にお問い合わせください。

回答できるお問い合わせには、全て回答をさせていただきます。

無料メールサポート

必須メールアドレス
必須サポートを希望する内容

確認事項

上記で入力していただいたメールアドレスに回答メールをお送りいたします。メールを受信できるメールアドレスをご記入ください。

質問に対する回答は、基本的に24時間以内の返信を心がけておりますが、質問が集中した場合、最長で返信に72時間のお時間を頂戴いたします。

当方で回答できる質問には全て回答をさせていただきます。ただし、全ての質問に対して明確な回答をご提供できるわけではありません。

個人情報保護法その他の法令に基づき開示が認められる場合を除き、あなたの個人情報を第三者に開示することはありません。個人情報保護法及び行政書士法に基づき個人情報等を厳重に管理し機密保持に努めるものとします。ただし、情報の漏洩、消失、他者による改ざん等が完全に防止されることについての保証は一切行いません。

ご記入いただいた個人情報は、質問に対する回答の送信と、メールマガジンの配信にのみ使用させていただきます。

上記のフォームから無料メールサポートご利用された方は、定期的または不定期に、Wordpress関連の最新情報、Wordpressのカスタマイズ方法、Wordpress関連のプレゼント企画や、広告などが掲載された「takayakondo.com」が発行するメールマガジンが配信されることに同意したものとします。

メールマガジンへは、「takayakondo.com」運営者によって後日に代理登録をさせていただきます。代理登録されるまでに、しばらく時間を要する場合がございます。

メールマガジンは、利用者の判断でいつでも購読を解除することができます。

この記事が気に入ったら【いいね】しよう!

WordPressサイトの常時SSL化はお任せください。

ADhttps://wordpress-supporters.com/wordpress-ssl/

常時SSL化されていないサイトにGOOGLEが警告文を表示させるまであと僅か!
今すぐにでも必要なWordPressサイトの常時SSL化は、プロに丸投げしてください。
今だけ20,000円OFF、GOOGLE対策、リミット間近、サポート充実。

Wordpressサイトのカスタマイズで
お困りではありませんか?

あなたのWordpressサイトを、ご希望に沿ってカスタマイズいたします。
次に該当する方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしたいが、自分でカスタマイズする暇がない。カスタマイズが得意な人に丸投げしたい。
  • Wordpressサイトをカスタマイズしてみたが、上手くカスタマイズできなかった。カスタマイズ経験が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしてみたら、バグが発生して困っている。正常に動作するように正しくカスタマイズしてほしい。

一つでも該当する方は、以下のリンクからチェックしてみてください。

詳細を確認する

現在、上記サービスは別ドメインで運用しております。
ドメインは異なりますが、わたしが提供させていただいているサービスです。

著者:takaya kondo

岡山在住のWebディレクターです。Wordpressを使ったWEBサイト制作を中心に10年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

  • 2015-09-05

    プラグイン不要!固定ページの拡張子に.htmlを付ける方法

    WordPressで固定ページの拡張子に.htmlを付ける方法をご紹介。プラグインを使う方法もありますが、今回はプラグインを使わない方法です。簡単ですので参考にしてください。 記事を読む

  • 2016-08-03

    あのサイトが利用しているWordPressテーマを調べる方法

    WordPressで構築されたサイトを見ていると、そのサイトで利用されているテーマが何なのか、無性に気になることってありませんか?そんな時にパッと利用されているテーマを調べる方法をご紹介します。 記事を読む

  • 2016-01-14

    WordPressのテーマをカスタマイズする時によく使うタグをまとめてみた。

    WordPressのテーマをカスタマイズする時、よく使うタグがありますよね。記事のタイトルを取得したり、投稿日時を取得したり、ワードプレスは簡単なタグを設置することで様々な情報を取得&表示することができます。今回は、そんなワードプレスの中からよく使うモノをピックアップしてまとめてみました。 記事を読む

  • 2017-07-21

    【WordPress】自動更新されるサイトマップをプラグイン未使用で作成する方法

    WordPressサイトに自動更新されるサイトマップを作る方法をご紹介します。プラグインを使わない方法です。一度作成すれば、コンテンツが増えるたび自動的に反映されます。WordPressに慣れていない方でも5分程度でサイトマップを作成できます。 記事を読む

  • 2015-01-23

    特定記事のアイキャッチを表示する方法

    特定記事のアイキャッチを取得する方法をご紹介します。とある仕事で特定記事のアイキャッチを表示させる必要があり、調べてみたのでやりかたをまとめてみました。誰かの参考になるとうれしいです。 記事を読む

コメントを残す


(必須)