2008/11/16 日 22:52

前項の『しばた工務店のサーバー引越し』にも書いたように、データベースの文字コードをEUCからUTF-8に変更したのね。

そしたら、今までにはなかった問題が…。

過去の記事やコメントの中の「~」が「?」と表示されてるじゃないですか。
データベースをエクスポートした時に文字化けしたのかな?と思ったけど、ダンプファイルは化けてないし。

いろいろググってみたら、どうも既知の問題らしく…。
どうやら、UTF-8を使う以上、根本的な解決方法はなさそうな雰囲気。

「~」のように実体参照の形にすれば、一応解決するので、過去の記事の「~」はすべて「~」に変換したよ。

しかし、問題はこれからのことなのよね。

コメントを書いてもらうときに、「~」を使ったら文字化けしちゃうのはちょっと困るよねえ。「~」と書いてもらえば済むとはいえ、そんなの普通は気がつかないって。

自動的に実体参照に変換してくれるプラグインとかないのかなあ?

[追記 2008/11/17]
…と思っていたら、無事に解決したわ。

日本のWordpressのフォーラムを覗いていたら、同じような症状が報告されてたのさ。

空の改行 と 「~」 が文字化けする

EUCのデータベースをphpMyAdminを使ってインポートすると、この問題が起こるみたい。

解決方法としては、

  1. いったんphpMyAdmin上でインポートして、Wordpress2.6用のデータベースを作成(ワタシが前項でやった手順のまま)
  2. Wordpress2.6のエクスポート機能を使って、Xmlファイルを出力
  3. phpMyAdmin上でデータベースのテーブルを削除
  4. Wordpressにログインしようとすると、Wordpress2.6のインストールを促されるので、そのままインストールを実行
  5. phpMyAdmin上で、wp_postsとwp_commentsのテーブルを「空にする」
  6. Wordpress2.6のインポート機能を使って、Xmlファイルを取り込む

よく分らないけど、これできれいさっぱり直りましたわ。

※5.のテーブルを「空にする」をやっておくと、4.のインストール時にできた余計なサンプル投稿を削除できる。
これをやらないと、投稿のNoがインポート前と後で変わってしまうので注意~。

コメントは受け付けていません。