[MovableType]日本語のタグが重複して表示されるのを修正
2008 7月 10
ここで利用しているMovableType4.1ですが、右側に表示されているタグクラウドで日本語のタグが集約されず、同じものが複数表示されていました。既知の問題のようですが、こちらの環境では他での方法が上手くいかなかったため、別のやり方を書いておきます。
原因 文字コードが異なっていたため
ここで利用しているXREAというホスティングサービスでは、DB(Mysql)の文字コードがディフォルトではEUC-JPになっています。MovableTypeではディフォルトがutf-8を想定しているため、そのままインストールすると文字化けが起こらないまでも、文字認識がおかしくなり、タグが集約できません。
解決方法 DBとMovableType上の文字コードを統一する
下記の記事を参考にさせていただきました。
MT4 の日本語を使用したタグクラウドが変だ
MT4で日本語を用いたタグクラウドがおかしい・~が出ない問題点
解決方法は色々あると思います。MT4側の文字コードを変更することもできそうですが、未検証です。(アプリ上問題が出ないか不安)
上の記事で書かれていますように、DBを消して、MT4上でバックアップ→DB消去→文字コードを変えて復元とやりましたが、色々変更しているせいかブログの一部が復活できませんでした。
そこで以下のようにdumpファイルを書き換えて行いました。
- PHPADMIN上でデータをエクスポート
DBを選択し、「エクスポート」タブで「ファイルに保存する」をチェックし、「実行」
ローカルにdumpファイルが出力されます。 - dumpファイルを書き換え
CREATE TABLE句の以下を置換しました。
DEFAULT CHARSET=ujis
↓
DEFAULT CHARSET=utf8 COLLATE utf8_general_ci - DBを再生成
ホスティングの管理画面上より、DBをUNICODEで作成します。
(!!この時点でデータが消去されます) - PHPADMIN上でデータをインポート
エクスポート時と同様に、「インポート」タブより先ほど修正したdumpファイルを指定し、実行します。 - タグデータを寄せる
今度はMT4にログインし、一覧-タグのタグ一覧画面より、ばらけているタグを選択し、そのまま「名前をつけて保存」を繰り返すと集約されていきます。
この方法でもDBを一度消去するため、注意が必要です。Xreaの管理画面、MT4上で一通りバックアップを取ってから実施してください。
(実施は自己責任でお願いします!)
No comments yet






