最近、Google検索結果で自サイトが「モバイルフレンドリーではありません」と表示されるようになったので、この機会にスマホ対応してみることにしました。
自分が使ってるブログツール Nucleus だと、NP_ChgSkin2SP(最新バージョンは1.31)というスマホ対応用のプラグインがあるのですが、環境的な問題があってそのままでは使えませんでしたので、備忘として修正した箇所を書いておきます。
文字コードをEUCにしてるので、ダウンロードしたファイルをTeraPadで開いて文字コードをEUCにして保存しました。ここは毎回のようにやってることなので、特に問題なかったですね。
ここから先が悩んだところなんですが、自分が使ってる Nuclues のバージョンはv3.41なんですが、プラグイン内のgetMinNucleusVersionの記載が3.50以上となっていました。
まずは340と値を書き換える必要があるんですが、これだけでは使えません。Nucleus ver.3.5 でのプラグインAPIの変更についてという記事にありますように、DB関連のメソッド類が変更になってます。そこで、3.41でも動くように、以下のように書き換えました。
//20170422_takehana_upd_s //$res = sql_fetch_assoc(sql_query($sql)); $res = mysql_fetch_assoc(sql_query($sql)); //20170422_takehana_upd_e
つまり
sql_fetch〜
↓
mysql_fetch
と書き換えるわけです(計三箇所)。
こうすることでスマホで閲覧した場合、指定したスキンが適用されるようになります。なおブログIDに関わらず、全ブログがスマホ用スキンになってしまうので、ブログごとにCSSなどを変更したい場合は、ブログIDで判別するようなIF文を書くといいです。
<link rel="stylesheet" type="text/css" href="../sphone.css"> <%if(blogsetting,bnumber,1)%> <link rel="stylesheet" type="text/css" href="cccc_sphone.css"> <%elseif(blogsetting,bnumber,3)%> <link rel="stylesheet" type="text/css" href="dddd_sphone.css"> <%elseif(blogsetting,bnumber,7)%> <link rel="stylesheet" type="text/css" href="eeee_sphone.css"> <%endif%>
なおスマホ用スキンはKyrie(スマホ用スキン) – はなまちやをダウンロードして、自分用に改修して使わせていただいています。
自環境がPHP5を使えないため未だにNucleusが3.41どまりなので上記のような対応をしてみましたが、同じ環境の人は殆ど居ない気がするものの、未来の自分が困ったときのため備忘録にしてみました。
コメント