「WordPressで学ぶPHP(4)通信編」を発売しました。
本書は、「WordPressで学ぶPHP(1)変数・制御構造編」「WordPressで学ぶPHP(2)データ構造編」「WordPressで学ぶPHP(3)関数編」の続編にあたり、Webブラウザとサーバー(PHP)との通信と、PHPから他のサーバーに通信することについて解説します。
複数種類のアーカイブページを出力する(その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を再構築します。