複数種類のアーカイブページを出力する(その3)

「複数種類のアーカイブページを出力する」の第3回として、アーカイブページのファイル名を細かく指定する方法を解説します。

1.ファイル名指定文字について

アーカイブページのファイル名をカスタマイズする方法は、日本語版Movable Type 3.2のヘルプには、今のところは記載がないようです。
ただ、英語版のヘルプには記載がありますので、それを元にお話します。

アーカイブページのファイル名は、英語版のヘルプでは、「Archive File Path Specifiers」を使って指定すると書いてあります。
ここでは、これを「ファイル名指定文字」と呼ぶことにします。

ファイル名指定文字は、「%a」など、パーセントとアルファベット(一部のものでは「-」も含む)を組み合わせたものです。
アーカイブファイルが出力される際には、これらの文字がさまざまな情報に置き換わります。
日付タグのフォーマット(formatアトリビュート)で使う文字と似ていますが、同じ情報でも違う文字が使われているものがあります。

ファイル名指定文字には、以下の表のようなものがあります。
なお、以下の表はMT英語版のヘルプおよびMovable Typeのソースコードに基づいていて、動作をすべて確認したわけではありません。

ファイル名指定文字 内容 同等のテンプレートタグ
%a エントリーの投稿者名(dirify='1'のグローバルフィルターを適用) <$MTEntryAuthorNickname dirify='1'$>
%-a エントリーの投稿者名(dirify='-'のグローバルフィルターを適用) <$MTEntryAuthorNickname dirify='-'$>
%b エントリーのファイル名(拡張子は除く) <$MTEntryBasename$>
%c エントリーのカテゴリーのパス(dirify='1'のグローバルフィルターを適用) <$MTSubCategoryPath$>
%-c エントリーのカテゴリーのパス(dirify='-'のグローバルフィルターを適用) <$MTSubCategoryPath separator='-'$>
%C エントリーの主カテゴリー(dirify='1'のグローバルフィルターを適用) <$MTArchiveCategory dirify='1' default=''$>
%-C エントリーの主カテゴリー(dirify='-'のグローバルフィルターを適用) <$MTArchiveCategory dirify='-' default=''$>
%d 日(「09」など) <$MTArchiveDate format='%d'$>
%D 曜日 <$MTArchiveDate format='%e' trim='1'$>
%e エントリーのID(「000040」のように6桁の形式) <$MTEntryID pad='1'$>
%E エントリーのID(「40」のようにIDのみ) <$MTEntryID pad='0'$>
%f アーカイブのファイル名 <$MTArchiveFile$>
%F アーカイブのファイル名(拡張子は除く) <$MTArchiveFile extension='0'$>
%h 時(「09」など) <$MTArchiveDate format='%H'
%H 時(「9」など) <$MTArchiveDate format='%k' trim='1'$>
%i インデックスファイルの名前 <$MTIndexBasename extension="1"$>
%I インデックスファイルの名前(拡張子を除く) <$MTIndexBasename$>
%j 年の中での日の通し番号(3桁) <$MTArchiveDate format='%j'$>
%m 月(「07」など) <$MTArchiveDate format='%m'$>
%n 分(「07」など) <$MTArchiveDate format='%M'$>
%s 秒(「01」など) <$MTArchiveDate format='%S'$>
%x アーカイブファイルの拡張子 <$MTBlogFileExtension$>
%y 年(「2005」など) <$MTArchiveDate format='%Y'$>
%Y 年の下2桁(「05」など) <$MTArchiveDate format='%y'$>

2.ファイル名指定文字の組み合わせの例

ファイル名指定文字の組み合わせ例をいくつか紹介しておきます。

例1:
2つ目の月別アーカイブページのファイル名を、「年/月/index2.html」にする場合(年は4桁、月は2桁)。
→ %y/%m/index2.html

例2:
2つ目のカテゴリーアーカイブページのファイル名を、「親カテゴリー/子カテゴリー/index2.php」にする場合。
→ %c/index2.php

例3:
エントリーアーカイブページのファイル名を、「年/月/日-時分秒.php」にする場合(年は4桁、その他は2桁)。
→ %y/%m/%d-%h%n%s.php

3.設定の手順

アーカイブファイル名を細かく指定するには、「複数種類のアーカイブページを出力する(その2)」にも書いたように、ファイル名を指定する欄で選択項目一覧の末尾にある「カスタマイズ」を選びます。
すると、その欄に文字を入力できる状態になりますので、ファイル名指定文字等を組み合わせたものを入力します。
設定が終わったら、「変更を保存」ボタンをクリックします。そして、最後にBlogを再構築します。

↓アーカイブページの出力先ファイル名のカスタマイズ例
アーカイブページの出力先ファイル名のカスタマイズ例