アーカイブの制御(その2)

昨日に続いて、アーカイブの制御について解説します。
今日は、アーカイブファイルの名前をカスタマイズする方法を解説します。

1.カスタムのパスを使う

昨日の記事で、アーカイブマッピングの設定を行う際に、「パス」の設定に応じて、アーカイブファイルのファイル名が決まることを解説しました。
この欄にはいくつかの選択肢が表示されますが、その最後に「カスタム」という選択肢があります。
「カスタム」は、ファイル名の決め方を自由にカスタマイズする場合に使います。

例えば、ブログ記事アーカイブテンプレートで「カスタム」を選択すると、「パス」の欄の表示が「%y/%m/%f」などに変わり、文字を入力できる状態になります。
ここでパスの内容を書き換えると、その設定に応じたファイル名で、アーカイブファイルが出力されるようになります。

カスタムのパス

2.カスタムのパスの書き方

上で見たように、カスタムのパスには「%f」などの記号が出てきます。
これらの記号は、「アーカイブページの年」など、アーカイブの元の情報を表します。
個々の記号と、出力される内容との対応は、Movable Typeのドキュメントの中にありますので、そちらを参照してください。

アーカイブマッピングで利用するアーカイブファイル名の定義(MOVABLE TYPE.JPのドキュメント)

例えば、先ほど例にあげた「%y/%m/%f」の場合、それぞれの記号の意味は以下の通りです。

記号意味
%yアーカイブページの年(西暦で4桁)。
ブログ記事アーカイブの場合、個々のブログ記事の公開日の年になります。
%mアーカイブページの月(2桁)。
ブログ記事アーカイブの場合、個々のブログ記事の公開日の月になります。
%fアーカイブファイルの名前+拡張子。
ブログ記事アーカイブの場合、個々のブログ記事の「出力ファイル名」で設定したファイル名に、アーカイブページの拡張子を付加した値。

また、「%f」等の記号以外の文字は、そのままファイル名に含まれます。
したがって、パスの設定が「%y/%m/%f」だと、個々のアーカイブページのファイル名は、「年/月/出力ファイル名.拡張子」のようになります。

なお、アーカイブページの拡張子の設定は、ブログの「設定」→「公開」メニューを選んで「公開設定」のページを開き、「アーカイブオプション」のところの「ファイルの拡張子」で行います。

アーカイブファイルの拡張子の設定

3.ファイル名の付き方の例

例えば、以下のように3つのブログ記事を書いたとします。

記事日付記事の出力ファイル名
記事12009年3月1日foo
記事22009年4月1日bar
記事32009年5月1日post_1

ここで、ブログ記事アーカイブテンプレートのアーカイブマッピングで、パスの設定を「entry/%y/%m/%d/%f」にするとします。
「%d」はアーカイブページの日(ブログ記事アーカイブなら、記事を公開した日付の日の部分)を表します。
また、ブログの公開設定で、アーカイブをサイトと同じパスに公開するように設定しているとします。
さらに、アーカイブページの拡張子を「html」に設定しているとします。
この場合、各記事の出力先ファイルとアドレスは、以下のように決まることになります。

記事出力先ファイルアドレス
記事1サイトパス/entry/2009/03/01/foo.htmlサイトURL/entry/2009/03/01/foo.html
記事2サイトパス/entry/2009/04/01/bar.htmlサイトURL/entry/2009/04/01/bar.html
記事3サイトパス/entry/2009/05/01/post_1.htmlサイトURL/entry/2009/05/01/post.html