タグ「MovableType」が付けられているもの

テーマに「Rainier」を選択し、スタイル指定で「Rainier スタイル」を選択すると発生。
「MT 4 スタイルライブラリ」「コミュニティースタイル」「プロフェッショナルスタイル」以外に出現するスタイルを選択すると他のテーマでも発生した。
mt-check.cgiで列挙される必須モジュールとデータベース周りのモジュールを最新の物に更新したら発生しなくなった。

で、レイアウトの変更が出来ない *1 問題も直ってしまった。
StyleCatcher周りで使ってるモジュールの問題だったのかな。


*1 : 再構築しても反映されないし、そもそも設定が保存されていないよう

Movable Type 6.0.3

6.0から 6.0.3へのアップグレード。
基本的に 5.2.7から 6.0へのアップグレードと同じ

4024-0.sh

unzip MT-6_0_3.zip
rsync -a MT-6.0/.htaccess MT-6.0.3/.htaccess
rsync -a MT-6.0/mt-config.cgi MT-6.0.3/mt-config.cgi
rsync -a MT-6.0/codes/ MT-6.0.3/codes/
rsync -a MT-6.0/plugins/macros.pl MT-6.0.3/plugins/macros.pl
rsync -a MT-6.0/plugins/diving/ MT-6.0.3/plugins/diving/
rsync -a MT-6.0/plugins/SyntaxColor/ MT-6.0.3/plugins/SyntaxColor/
rsync -a MT-6.0/plugins/footnote.pl MT-6.0.3/plugins/footnote.pl
rsync -a MT-6.0/extlib/bradchoate/ MT-6.0.3/extlib/bradchoate/
ln -sf MT-6.0.3 mt

後は再構築を。

Movable Type 6.0

5.2.7からのアップグレード
MT-6.0.zipを展開
以下のファイル/ディレクトリを旧版からコピー
.htaccess
mt-config.cgi
codes/ *1
plugins/macros.pl *2
plugins/diving/ *3
plugins/SyntaxColor/ *4
plugins/footnote.pl *5
extlib/bradchoate/ *6
後は mt.cgiをアクセスして指示に従ってやればOK
念のため全体の再構築を指示しておく。

編集完了後にキー入力のフォーカスが行方不明になるのは 5.2.7と変わらずガックリ。


*1 : これは独自プラグインが使うディレクトリ
*2 : footnote.plから使うライブラリ
*3 *4 : これは独自プラグイン
*5 : 脚注を入れるプラグイン
*6 : macros.plから使うライブラリ

MT4にて「指定したテキストファイルを加工して挿入する」プラグインを書いた。
MT5に移行したところ、テキストファイルに含まれる日本語が化けるようになった。
プラグインは内部でネイティブなプログラムを呼び出しており、そのプログラムは UTF-8でエンコードされたテキストを出力するようになっている。
悩んでは放置をしばらく繰り返した末、答えに行き着いた。
「プログラムの出力は UTF-8になっているけど、perlの内部表現としての UTF-8にはなっていなかった」という理由。
所謂「utf8フラグ」の問題で、プログラムの出力をそのまま使うのではなく Encode::decode_utf8()に食わせた結果を使うようにしたらあっさりと解決した。

MovableTypeやそのプラグインの問題ではないので「MovableType プラグイン 文字化け」等のキーワードで検索しても情報がなかったのも道理。

2014/03/16追記

MT6へ移行したところまたしても文字化けするように。 *1 再び悩んでは放置を繰り返した末、utf8プラグマを記述するという答えに行き着いた。

*1 : OSを入れ替えたタイミングでもあるので MTのバージョン差でなく Perlのバージョン差という可能性も。

気がついたのは数日前。
時期的にサーバ入れ替え時の問題かとも思ったけど、入れ替えから数日は大丈夫だったので他の原因かなと。
結論から言うと、Firefoxが 16になったからだった。

Firefox 16を使用するとMovableTypeでカテゴリーが指定できない件の修正パッチが出ました
こちらの記事から Patch file for Firefox 16 usersへ飛んで、MT-4.38-Fx16-Patch.zipをダウンロードして展開。
現在使っているのは 4.25なので、4.38向けにファイルを丸ごと差し替えるパッチだったので若干不安だったけど、少なくともカテゴリの登録/変更は出来るようになった。

変更点を見てみると、itemidというプロパティを軒並み item_idに置き換えているだけっぽく、???な修正。
同じく件の記事から Firefox 16 のサイト互換性に関わる修正のまとめへ飛んでみると…MTで定義していた itemidというプロパティと同名のプロパティが Mozilla16からシステム側で定義されてしまったのが原因なのね。
修正内容にも合点がいく。

修正内容の肝がわかったので 4.25用のパッチを作っておいた。

zidney@chizuru:XXXX/mt$ patch -p0 <mt4_25-firefox16-category.diff

MT4

httpサーバとデータベースが稼働し始めてしまえば基本的にファイルの移動だけで OK。

「DBD::mysql」が必要だというので cpanを使って導入。
cpan install DBD::mysql

MovableType4

通常のインストールだとテストでエラーが出るので強制インストール
cpan>force install DBD::mysql

最近、カテゴリだけでなくタグを設定すると有効なことに気がついたのでぽちぽちいじっていたら…
日本語を使うと重複して表示されちゃうね。
英数だけなら問題ないようなので調べてみると、テーブルの文字コード *1 の設定が問題らしい。
検索すると「サーバのデフォルトを変更した上で DBのバックアップ&リストアを行う」という手順が多く出てくるけど、「該当テーブルの設定だけいじってやれば OK」という情報も。
後者に従って「alter table mt_tag change tag_name tag_name varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;」を実行。
まんま、「タグテーブルの該当列の文字コードを utf8、照合順序を utf8_general_ciに変更」という SQL。
再構築を行って完了。


*1 : というか、比較順序?

footnote.pl

tDiaryを使っていた時は便利に使っていた注釈機能。
MovableTypeには無いのかなと思ったら、作っている人がいた。

Footnote Plugin


ハイパー日記システムやtDiaryではわりとメジャーな footnote *1 機能.しかし,Movable Type 周りでは,この機能を持つプラグインは見つかりませんでした *2.そこで,自分で作ってみることにしました.

2003年作なので MT4で動くのか不安だったけれど、調べてみると導入実績があるようなのでうちの環境にも入れてみた。


  • MTMacrosと footnote.plをインストール。

  • fndefineと fnprintのテンプレートを作成。

  • テンプレート(アーカイブテンプレート、メインページ、カテゴリ別ブログ記事リスト)の bodyタグ直後に <MTInclude module="fndefine">を挿入。

  • <$mt:EntryBody$>と <$mt:EntryMore$>を <MTMacroApply>タグで囲む。

  • <div class="asset-content entry-content">の閉じタグの後に <MTInclude module="fnprint">を挿入。


MTいい感じかもね

少しわかってきた。

2  

月別 アーカイブ

ウェブページ

Powered by Movable Type 6.0.3

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。