最近、Google検索結果で自サイトが「
モバイルフレンドリーではありません」と表示されるようになったので、この機会にスマホ対応してみることにしました。
自分が使ってるブログツール Nucleus だと、
NP_ChgSkin2SP(
最新バージョンは1.31)というスマホ対応用のプラグインがあるのですが、環境的な問題があってそのままでは使えませんでしたので、備忘として修正した箇所を書いておきます。
文字コードをEUCにしてるので、ダウンロードしたファイルをTeraPadで開いて文字コードをEUCにして保存しました。ここは毎回のようにやってることなので、特に問題なかったですね。
ここから先が悩んだところなんですが、自分が使ってる Nuclues のバージョンはv3.41なんですが、プラグイン内のgetMinNucleusVersionの記載が3.50以上となっていました。
まずは340と値を書き換える必要があるんですが、これだけでは使えません。
Nucleus ver.3.5 でのプラグインAPIの変更についてという記事にありますように、DB関連のメソッド類が変更になってます。そこで、3.41でも動くように、以下のように書き換えました。
$res = mysql_fetch_assoc(sql_query($sql));
つまり
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どまりなので上記のような対応をしてみましたが、同じ環境の人は殆ど居ない気がするものの、未来の自分が困ったときのため備忘録にしてみました。