WordPressでレスポンシブ対応するのですが、スマホで表示するときに、レスポンシブ化せずに表示させるときに、たとえばプラグインを使う方法がありますが、あえてプラグインを使わずにスマホ表示とPC表示を切り替えられるようにする方法です。
以外と簡単だったので、さくっとまとめます。
基本的に、PC表示かスマホ表示かは、cookeiに保存するので、まずはjquery.cookieを用意します。
まず、header.phpで、タグの中に以下を記述します。
もし、ダウンロードして使いたいなら、こちらから。
https://github.com/carhartl/jquery-cookie
おなじくheader.phpのタグの中に以下を記述します。
viewportをPC表示と、スマホ表示で切り替えるようにします。
width=940のところは、サイトの横幅に合わせてください。
おなじくheader.phpのタグの中に以下を記述します。
リンクをクリックすると、cookieに、view_switchという名前でPC表示(非レスポンシブ)のときは1を保存するようにします。
つぎに、切り替えボタン(リンク)を任意の場所に用意します。
このリンクをクリックすると、さきほどのJQueryが稼働するようになります。
もし、モバイルからのアクセスのときだけ、表示したければ、wp_is_mobileをつかえばいいですね。
function my_scripts(){ if (filter_input(INPUT_COOKIE, 'pcview')==0){ wp_enqueue_style( 'responsive-css', get_stylesheet_directory_uri().'/responsive.css' ); wp_enqueue_script( 'responsive-jquery', get_stylesheet_directory_uri() . '/responsive.js', array(), '1.0.0', true ); } } add_action( 'wp_enqueue_scripts', 'my_scripts', 50 );
もちろん、header.php内で直接cssファイルをきりかえてもOK
面倒くさそうですが、実際にやってみるとそんなに大変ではありません。
header.phpに以下を追加
任意の場所に切り替えリンク(ボタン)を追加
プラグインを使った方法
http://blog.thingslabo.com/archives/000251.html
jquery.cookie.jsをつかって、viewportの切り替え
http://katoshun.com/blog/switch-screen.html
jquery.cookie.jsについて
http://weboook.blog22.fc2.com/blog-entry-404.html
phpでcookieを設定したり、読み込んだり
http://bashalog.c-brains.jp/08/05/20-175803.php
[Collab] Collab…