MT3とapeboard+のUTF-8化

NO IMAGE
たまにはちょっと堅めの話題でも。 このサイトで使ってるブログツール(MovableType)のバージョンは2.661のままだったんですが、いろいろ調べてみるうちに、3.xでも2.xで使ってるプラグインがそのまま使えそうってんで、重い腰上げてバージョンアップしてみました。 YoungYoungとラブログのバックアップとって、データを3.11に取り込んだら……、おおうものすごい文字化けが(汗) 2.661で使ってた文字コードはEUC-JPで、3.11のデフォルト文字コードはUTF-8なのが原因。 文字コード界ではunicode対応のUTF-8の方がなんとなくナウい感じらしいので、ブログツールをバージョンアップしたのに、今更もう一度旧世代なEUCにするのもなーって思って、いろいろ格闘。 ブログデータの方はすぐなんとかなったんだけど、問題は同サイト内で使ってる他のCGIスクリプト。 よくCGIにくっついてくるjcode.plだと、UTF-8の文字コードにデコード出来ないので(んま!)、代用品のJcode.pmとか他にもいろいろ試したんだけど、いやーもうこれがさっぱり!動きゃしねえ! うちはDremweaverのテンプレート機能使って、サイト内のデザイン統一してるので、CGIファイルだけEUC-JPにするやり方はめんどくさいんだよね。テンプレートから切り離したり別のエディタ開かなくちゃいけないし。 UTF-8に対応してるCGIを新しく探してもいいんだけど、今ラブログ使ってるBBS(apeboard+)もフォームメーラーもかなり長いこと愛用してるんで、新しいの探すのもまためんどくさい…。 そんなことでもんもんとしてたら、やっぱ同じ事考える人はいるもんですね。 apeboard+はUTF-8化の方法がネットにありましたよ。 いくつか方法があるようですが、その中でも一番簡単な方法で。
apeboard+のUTF-8化の方法: 1、メインCGIとmt.cgiの「require ‘./jcode.pl’;」の先頭に#を付けてコメントアウトする ↓こんな感じ #require './jcode.pl'; 2、同じくその2つのCGIで「jcode.pl による文字コードの変換」の部分の2行も先頭に#をつける。 3、出来上がったらUTF-8Nで保存。cgiとdatファイルはUTF-8で保存するとエラーになるので注意。(私はこれでつまずいた) 4、スキンのHTMLファイルのcharsetも、UTF-8に変えて保存するのを忘れずに。
これでUTF-8環境下で表示できる。ただメール通知機能を使うとメールが文字化けする。けど私はその機能使ってなかったので無問題。 メールの文字コードはWEBとまた違うので、ちょっとややこしい。CGIファイルの一部をいじってはい終わり~とはいかなかった。 長時間格闘してもどうにもならなかったので、UTF-8対応のフォームメーラーも探したんだけど、まだ数が揃ってないんだなこれが。欲しい機能を満たすのもなかったし。(PHPだとここらへんの文字コードの扱いが楽だと聞いたんだけど、どうなんだろう) で、結局どうしたかというと、「インラインフレームでフォームだけ違うHTMLにする」で解決しました。 結局は超原始的…(–;) で、そんなこんなで移行作業は一通り完了! 見た目全く変わってないけどね!!(笑) ま、おいおいやってきます。

diaryカテゴリの最新記事