MovableTypeの話。
体が勝手にのエントリー、パーマリンクはもはや公共物に近いを読んで、MTのバージョンアップとインポートで困るところは皆一緒だなあ、と独り頷いたのでなんとなくメモ。
個別リンクの名前付けにどんな規則を使うかと云うのは案外大事なところで、そしてその重要度は記事のインポートを経験するまで案外気がつかない。
僕も当初、MT2.661(だったかな)を導入したときにあまり深く考えないで過去ログやそのへんのアーカイブ規則を作ったものだから、MTのバージョンアップで再導入をしたときに難儀した。
難儀したと云うより、個別記事にリンクしてた人ごめん、と心で手を合わせてファイルはいったん破棄した。
過去に使用していた僕の名前付け規則だとフォルダがごちゃごちゃするし、1日で複数の記事を投稿する僕のスタイルに合わなかったのだ。
MTのバージョンアップをした際、今後はこんな目に合わないようにとかなり考えて構築したのが今の名前付けルールで、これは案外気に入っている。
このとき考えていたのは概ねこんなことだ。
・記事の投稿された日付時刻に基づいて名前を付ける
(記事の投稿順などの連番を使うと、インポートしたときにURLが変わるのを防ぎにくいから)
・フォルダは増やしすぎず少なすぎず
・index.htmlのないフォルダが発生するのを防ぐ
僕の更新スタイルだと、1分以内に2つ以上の記事を投稿することがままあるため、記事の名前付けでは「記事の日付+24時間表記の時間+分+秒.html」になるようなスタイルを採用した。分まででは同じ名前になってしまう可能性があるからだ。
余談だけど、時刻その他が1桁の場合0を補完している。
フォルダは/archivesに投稿日付から年と月を取得して格納するようにした。
これで月別アーカイブのファイル名をindex.htmlにしてそれぞれのフォルダに入れれば完璧だったのだけど、ちょっとうっかりしていてこれだけはクリアできないで居る。
月別アーカイブページのデザイン変更も含めてクリアしておきたい宿題だ。
以上のルールを適用すると、例えばこの記事が2006/07/17 23:28:02に投稿された場合個別リンクが
http://backentrance.net/archives/200607/20060717232802.html
となるわけだ。(実際この通りになっている)
具体的には、MTの設定画面内「公開の設定」から「アーカイブ・マッピング」で「エントリー」の名前付けをカスタマイズ入力にして
<MTArchiveDate format="%Y%m">/<MTArchiveDate format="%Y%m%d%H%M%S">.html
とすればいい。(MT3.2日本語版ではこれでいけるけど他のバージョンで同じかは保証できない)
確か新しいタグの書き方もあったように思うんだけど、僕は古いタグの方が馴染めるのでこっちを使っている。
(このタグの規則がバージョンアップで変わったりするからMTのバージョンアップは油断ならないんだよな)
さて、ここで頭を悩ませた効果は、ロリポップからさくらインターネットにサーバの移転をした時にようやく発揮された。なんとも息の長い話だ。
ちゃんとやっといてよかったなと云うありがたみがルールを決めているその場では薄い、と云うのも名前付け規則がおざなりにされる原因のひとつなのだろう。
仕事の現場だったらこうした名前付け規則を考えるのはエンジニアの受け持ちなのだろうけど、個人サイトじゃそうもいかない。
エンジニアとデザイナとライターを全部一人でやらなきゃいけないのが個人サイトの面白みかつ泣き所と云うところか。