カテゴリー
technology

MT4 アップグレート+Redirect+Action Stream

MT4が出たのは知っていたが別に必要がなかったのでほって置いたのに、なぜか昨夜火がついて 3.34 からのアップグレードを実施。
移行自体はあっけなく終了。テンプレート関係の問題もでず、そのまま再構築しても以前と全く同じデザインで再構築された。ついでに以前から気になってたデータベース charset が latin1 のままになっていた問題を解決して満足した。
あまりにもうまくいきすぎてつまらないので、テンプレート初期化を実行。あー、もうー。その後は結構面倒。標準テンプレートに戻ったわけなので、新規ブログを作るときのテンプレートデザインプロセスそのまま。
まず Widget Manager がオフになっているのでプラグイン設定画面でオン。次にWidget 関連のタグ変わってたので変更(WidgetManager -> WidgetSet)。widget関係の標準スタイル名が変更になっているので修正(module-XXX -> widget-XXX)。あとはウィジェットセットを新規に作成して、ウィジェットセットをサイドバーで読み込むよう include の記述をして完了。


テンプレートが初期化されてちょっと困ったのはURLが変更になってしまうこと。今までは foo_bar.html のように basename の空白文字を _(アンダースコア)で置き換える設定だったのだが、MT4標準設定では -(ハイフン)になった。テンプレート毎の設定を再度いじって元のURLと同じにしてもいいんだけど、なぜかハイフンを使いたくなってそのままにした。
よせばいいのに Apache の Rewrite 機能で以前のURLを新しいURLに転送する設定を検討した。なかなかスマートにいかずに悩むも何とか正常動作に。これで例えば http://5net.com/blog/2004/11/debian_apache2_ssl.htmlhttp://5net.com/blog/2004/11/debian-apache2-ssl.html に転送されるようになった。

<Directory /path/to/htdocs/blog/>
<FilesMatch "[^_]+_[^_]+\.html$">
RewriteEngine On
RewriteRule   /path/to/htdocs/blog/(.*)_(.*)\.html$ \
/path/to/htdocs/blog/$1-$2.html [N]
RewriteRule   /path/to/htdocs/blog/(.*)\.html$ \
/blog/$1.html [R=permanent,L]
</FilesMatch>
</Directory>

ソーシャルブックマークに登録されてるURLは過去のままだから同じページを今後ブックマークされると同一カウントにはならないのか。そんなにブックマークされてないから個人としては気にしないが仕事で運営しているサイトの方は困るな。ソーシャルブックマークサービス運営会社に通知する仕組みはないのかな?検索エンジンのクローラーなんかは 301(Permanent Redirect) レスポンスでインデックス内のURLを新URLにアップデートしてくれているので、同様の対応を望みたい。
最後に思い立って Action Stream を導入してみた。トップページの右サイドにTwitterやらdeliciousやらのリンクリストが表示されているけど、外部のサービスでの自分の活動を収集して見せることができるようになる。
収集された記録はMTのリポジトリ内に蓄積されて、テンプレートタグで出力可能。もちろん管理画面で公開・非公開の操作もできる。
Action Stream
すでに自動収集に対応したサイトがいくつか準備されてるけど、頑張って拡張すれば他のサイトの更新情報の収集を自動化することも可能になっている。