[MovableType]日本語のタグが重複して表示されるのを修正

2008 7月 10
by yuzuru

ここで利用している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

Leave a Reply

Note: You can use basic XHTML in your comments. Your email address will never be published.

Subscribe to this comment feed via RSS

Get Adobe Flash playerPlugin by wpburn.com wordpress themes