PR(記事内にアフィリエイト広告が含まれています)
スポンサーリンク
Nucleus

NP_ChgSkin2SP

最近、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どまりなので上記のような対応をしてみましたが、同じ環境の人は殆ど居ない気がするものの、未来の自分が困ったときのため備忘録にしてみました。

コメント

タイトルとURLをコピーしました