pack2011にアップグレードしよう!
2-4-7 文字化けしている場合の対処方法
文字化けしている場合、特にモジュール画面で文字化けしている場合は、languageファイルがなかったり、ちゃんと読めていないことが殆どだと思います。ただし、モジュールがUTF-8に対応していない場合はちょっと面倒です。ここでの選択肢は、次の3つがあります。
1 UTF-8に対応するlanguageファイル(フォルダ)を追加する(または、UTF-8に変換する)
2 モジュールをUTF-8対応のものに差し替える(または、UTF-8に変換する)
3 あきらめる(汗)
1 UTF-8に対応するlanguageファイル(フォルダ)を追加する(または、UTF-8に変換する)
2 モジュールをUTF-8対応のものに差し替える(または、UTF-8に変換する)
3 あきらめる(汗)
1 UTF-8に対応するlanguageファイル(フォルダ)を追加する(または、UTF-8に変換する)
とりあえずは、まず、文字化けしているモジュールに該当するフォルダ下にあるlanguage(言語)フォルダを確認してみましょう。このあたり、ローカル環境なので、簡単にできますよね。
多分、languageフォルダにja_utf8フォルダがなく、日本語に関係しそうなのはjapaneseフォルダだけがあるのではないでしょうか?
その場合は、当該モジュールのオリジナルアーカイブからja_utf8に対応するlanguageファイル(フォルダ)を探してきてコピーするか、今あるjapaneseフォルダ内にある各ファイルをutf-8に変換して流用する方法があります。
languageはあるけれどjapaneseフォルダしかない場合は、EUC用の文字セットしかない訳ですから、UTF-8用の文字セットを作る必要があります。でも、簡単なんです。(ちょっと面倒ですけど)
japaneseフォルダをフォルダごとコピーしてja_utf8にリネーム、中に入っているファイル全部をUTF-8に変換するだけで完了です。(一括変換ソフトを使っても良いし、エディターでファイルを読み込んでエンコードをUTF-8に変えて保存する方法でも良いですね。)
多分、languageフォルダにja_utf8フォルダがなく、日本語に関係しそうなのはjapaneseフォルダだけがあるのではないでしょうか?
その場合は、当該モジュールのオリジナルアーカイブからja_utf8に対応するlanguageファイル(フォルダ)を探してきてコピーするか、今あるjapaneseフォルダ内にある各ファイルをutf-8に変換して流用する方法があります。
languageはあるけれどjapaneseフォルダしかない場合は、EUC用の文字セットしかない訳ですから、UTF-8用の文字セットを作る必要があります。でも、簡単なんです。(ちょっと面倒ですけど)
japaneseフォルダをフォルダごとコピーしてja_utf8にリネーム、中に入っているファイル全部をUTF-8に変換するだけで完了です。(一括変換ソフトを使っても良いし、エディターでファイルを読み込んでエンコードをUTF-8に変えて保存する方法でも良いですね。)
2 モジュールをUTF-8対応のものに差し替える(または、UTF-8に変換する)
ややこしいのは、2の場合
ちょっと古いモジュールの場合、UTF-8に対応していなかったり、言語ファイルを使わずにプログラム内に直接「文字」が書き込まれていることもあったりします。
その場合、ネット上からUTF-8に対応したバージョンをダウンロードして差し替えるか、プログラムそのものをUTF-8に変換するなどの作業が必要な場合があります。
ちなみに、YYBBSなどの古いモジュールの場合、EUC環境で使うことを想定して作られていますので、languageファイルがなかったり、あってもEUCのものだけだったり、一部プログラム内に直接日本語がEUCで書かれていたりするものがあります。
その場合は、languageファイルをUTF-8対応にするとか、プログラムやテンプレートをUTF-8化する必要があります。
プログラムやテンプレートをUTF-8化するには、最初にご紹介した KanjiTranslator などの一括変換ソフトを使うと、該当するモジュールのフォルダをして一括変換できるのでとても便利です。
なお、変換の際は、変換先の文字コードをUTF-8N「UTF-8(BOM無し)」を選択してください。
ちょっと古いモジュールの場合、UTF-8に対応していなかったり、言語ファイルを使わずにプログラム内に直接「文字」が書き込まれていることもあったりします。
その場合、ネット上からUTF-8に対応したバージョンをダウンロードして差し替えるか、プログラムそのものをUTF-8に変換するなどの作業が必要な場合があります。
ちなみに、YYBBSなどの古いモジュールの場合、EUC環境で使うことを想定して作られていますので、languageファイルがなかったり、あってもEUCのものだけだったり、一部プログラム内に直接日本語がEUCで書かれていたりするものがあります。
その場合は、languageファイルをUTF-8対応にするとか、プログラムやテンプレートをUTF-8化する必要があります。
プログラムやテンプレートをUTF-8化するには、最初にご紹介した KanjiTranslator などの一括変換ソフトを使うと、該当するモジュールのフォルダをして一括変換できるのでとても便利です。
なお、変換の際は、変換先の文字コードをUTF-8N「UTF-8(BOM無し)」を選択してください。
3 あきらめる(汗)
あきらめる。これもひとつの選択肢です。(汗)
とは言っても、これからpack2011にアップグレードしようとしているのですから、先にアップグレードしてしまってから、再度、文字化けしているかを確認して対処するという方法も考えられなくもない訳で・・・
最終的に、文字化けも直らず上手く動作しないというモジュールがあるなら、別のモジュールに切り替える良い時期だと思って、データの移行を行うというのもひとつでしょう。場合によっては、pcak2011を素の状態でインストールして、データを個別に移す方が良い場合もあるかもしれません。
それとも、文字化けしてどうしようもないモジュールだけアンインストールして、pack2011にアップグレードしてから、再度インストールして・・・などなど、色々な方策が考えられるのではないでしょうか?
いずれにしても、ローカル環境なら、あせらずじっくり作業ができると思います。
とは言っても、これからpack2011にアップグレードしようとしているのですから、先にアップグレードしてしまってから、再度、文字化けしているかを確認して対処するという方法も考えられなくもない訳で・・・
最終的に、文字化けも直らず上手く動作しないというモジュールがあるなら、別のモジュールに切り替える良い時期だと思って、データの移行を行うというのもひとつでしょう。場合によっては、pcak2011を素の状態でインストールして、データを個別に移す方が良い場合もあるかもしれません。
それとも、文字化けしてどうしようもないモジュールだけアンインストールして、pack2011にアップグレードしてから、再度インストールして・・・などなど、色々な方策が考えられるのではないでしょうか?
いずれにしても、ローカル環境なら、あせらずじっくり作業ができると思います。
- 1XCL2.18(EUC)をpack2011(XCL2.2 UTF-8)にアップグレードしてみよう!
- 21 アップグレード作業に必要な(あった方が良い)環境・ソフトとサーバ要件
- 32 アップグレードの手順
- 42-1 サイトのアップグレード方針を決める
- 52-2 アップグレードしたいサイト(実サイトのXOOPS)のバックアップ
- 62-3 バックアップしたSQLデータをUTF-8に変換
- 72-4 バックアップしたデータを使って、ローカル環境にて実サイトを再現
- 82-4-1 ローカル環境を用意しよう!
- 92-4-2 ローカル環境を立ち上げ、phpMyAdminでデータベースを作成しよう
- 102-4-3 エクスポート(バックアップ)したSQLファイル(データ)をインポートしよう!
- 112-4-4 実サイトのバックアップファイルをローカル環境にコピーしよう
- 122-4-5 mainfile.phpの書き替え作業
- 132-4-6 実サイトが再現される
- 14
- 152-5 ローカル環境で再現した実サイトをアップグレードする
- 162-5-1 pack2011のダウンロードと解凍、XAMPPに再現したサイトへの上書き
- 172-5-2 必要ファイルの移動とmainfile.phpの確認・編集
- 182-5-3 ファイルとフォルダの削除
- 192-5-4 アップグレード
- 202-6 ローカル環境で、アップグレード後の動作検証を行う
- 212-6-1 管理画面が文字化け? (言語定数の設定変更)
- 222-6-2 繰り返し確認しましょう(トラブルシューティング)
- 232-7 実サイトのアップグレード作業
- 242-7-1 バックアップ
- 252-7-2 実サイトをアップグレードする
- 262-8 やっておくべき作業
- 272-9 もし、上手く行かなかったら・・・
- 282-10 上手くアップグレードできたら、いざ公開!