ブログをNucleusからWordPressに移行したで

Nucleusが3年前に開発終了になってしまってるし、色々不便ってことでWordpressにデータ移行しました。
Wordpress自体は仕事で何度も触っているので特に問題点も無し。

あとついでにレスポンシブデザインとSSL化もしたかったので。

まだいじらないといけない部分もあるけど、その辺りはゆっくりいじりますかねー。

Nucleusのスパム対策

どれだけマイナーなCMSと言われてもNucleusを使い続けて一途なアテクシをアピールなう。
アルファがベータをカッパらってイプシロンする昨今です、こんばんわ。

このブログのコメントシステムはDisqusを使っているので実害は無いんですが、Nucleus本来のコメント機能にスパム投稿がバンバン着ているのが最近目について仕方が無いので対応。

とはいえやったことは
「/libs/ACTION.php」 の addComment関数の冒頭に”return”を挟んだだけなんですけどね。

ACTION.php

これで効果があるのかどうかしばらく様子見ですー。

[参考]
アルファがベータをかっぱらったらイプシロンした。なぜだろう?とは (アルファガベータヲカッパラッタライプシロンシタナゼダロウとは) [単語記事] – ニコニコ大百科

Nucleusのバージョンを3.4から3.65sp1にバージョンアップした結果

盛大に文字化けしたやないかい!!!!!!
我、激おこプンプン丸なりぃ! ヽ(`Д´)ノ

と思ったら、案の定深刻な文字化けがどーのこーのという記事がありました。

2011年春のアップグレード・キャンペーン – Nucleus CMS Japan
http://japan.nucleuscms.org/archives/index.php?itemid=216

先に見とけば良かった・・・。

config.phpの一番下に
sql_query("set NAMES latin1");を入れてなんとか文字化けは対応しましたけど、パーマネントリンクがおかしくなってるーーー!!


[追記]
パーマネントリンクは

Nucleus – 便利な使い方のヒントの紹介
http://japan.nucleuscms.org/documentation/tips.html

のFancy_URL2ってやつに合わせてみたら直った!

とりあえずこれでアップグレードは完了ですかね。

ブログのスマホデザインできたー

NucleusでPCとスマホでの表示切り替えがググってもあんまり見つからなかったので内部の処理を直接いじってみたみた。
内容はUserAgentでSkinIDを振り分けてるだけなので大した変更でもないですが。

画像が大きい場合でもスマホの画面内にうまく収まるようにCSSを調整するのが若干面倒くさかった・・・。

このサーバのPHPを5.2から5.3にアップデートしたった!

PHPで名前空間を使う予定ができたので、急遽PHPをバージョンアップさせました。
PHP5.3になるといろいろと仕様が変わって面倒になるとは以前から見知っていたものの、実際にやってみるといろいろと現存してるサイトでトラブル出ますなぁ。


まず、
date(): It is not safe to rely on the system's timezone settings.
が出た。
php5.3からはタイムゾーンの設定をちゃんとしないとこういうエラーが出ます。

PHP5.3 でタイムゾーンの設定に関する警告が出る : Serendip – Webデザイン・プログラミング
http://www.serendip.ws/archives/3229

を参考にして解決。


次に
php.ini内のshort_open_tag が Offになってた。

これは
<?php 〜 ?>
の書式だけを良しとし、

<? 〜 ?>
を文法エラーとみなすところを’php’を省いてもOKとする設定。
これをもちろんonに変更。


んで、次に
Warning: Parameter 1 to NP_TrackBack::event_InitSkinParse() ↓
expected to be a reference, value given in ↓
/***/***/***/****/nucleus/libs/MANAGER.php on line 414

というNucleus内部のエラー。
これは恐らくphp5.3以降の参照渡しの仕様によるエラーかな、と。
NucleusはまだPHP5.3に対応してなさそうですし。

該当ソースを見ると、
call_user_func(array(&$this->plugins[$listener], ↓
'event_' . $eventName), $data);

というのがあるので

call_user_func(array(&$this->plugins[$listener], ↓
'event_' . $eventName), &$data);

にしたら消えました。


最後に
array_push() expects parameter 1 to be array
これは、書かれている通り、array_push()の一つ目の引数を配列にしてやればOK。


とりあえずうちのサーバで起こったエラーはこんなとこですね。
あとはNucleus内でまたちょこちょこエラーが出るかもしれないけどその都度対処するしか無さげな感じ。

( ´_ゝ`)思ったより手こずった。

NP_Twitter使えなかった(・ω・`)

NP_Twitterをインストールして、Twitterのログイン情報をいれて試そうとしたところ、

どうやっても

NP_Twitter: Failed to update Twitter info, please try again

と出るのでソースの中身を調べてみましたが、どうもTwitterへのアクセス方法がBASIC認証だったせいで

Basic authentication is not supported

と返ってきていたみたい。

ってことは2010年9月1日にTwitterのBASIC認証が終わって以降はこのプラグインは使えないことになるんよ(・ω・`)

NP_Captcha が動かない

サーバリニューアル後、なんかこのブログにスパムコメントが沢山来るなぁと
不思議に思いつつ確認してみたらNP_Captchaが動いてなかった模様。

管理画面で見るとちゃんとプラグインはインストールされてるハズなのに
なんでやろか?(・ω・`)

と、思っていたらGDライブラリをインストールし忘れてた。
こういう落とし穴もあるのか、と思った昨今です。

道路に5本まとまって野太い犬のフンが落ちているな、と思ったらこげ茶色で雨でジュクジュクになってしまった皮手袋だった時と同じくらいのウッカリ具合。