ある日、『学校のプールの授業で自由時間になったとき、背泳ぎをしようとしたら溺れかけちゃった♪ふふっ。』と長女が笑いながら話しかけてきました。水泳教室は行かせるべきだったかなぁ~と後悔しているhiakoです。
「MTテンプレートセットの作成手順(2)」に引き続き、MTのテンプレートセットの作成手順をご紹介します。今回は、「テンプレートセット内容の各セクションについて」から始める予定でしたが、ディレクトリ構造を説明するのを忘れていましたのでそこから開始します。
テンプレートセットのディレクトリ構造
≪ダウンロードファイル≫
ブログURL
│
├─ MTをインストールしたディレクトリ名/
│ │
│ ├─ テンプレートデザインを格納したディレクトリ名/
│ │ ├─ ○○.img 画像ファイルやcssファイルなど
│ │
│ ├─ plugins/ (MTのデフォルトから変更していなければこのままです。)
│ │ ├─ MyPlugin/
│ │ │ ├─ my_plugin.pl
│ │ │ ├─ templates/
│ │ │ │ ├─ another_entry.mtml
│ │ │ │ ├─ entry.mtml
│ │ │ │ ├─ entry_listing.mtml
│ │ │ │ ├─ foo.mtml
│ │ │ │ ├─ homepage.mtml
│ │ │ │ ├─ search_results.mtml
≪hiako作成ファイル≫
ブログURL
│
├─ mt/
│ │
│ ├─ mt-static/
│ │ ├─ temes/
│ │ │ ├─ hiakoSET_1/
│ │ │ │ ├─ ○○.img etc
│ │
│ ├─ plugins/
│ │ ├─ hiakoPlugin/
│ │ │ ├─ my_plugin.pl
│ │ │ ├─ templates/
│ │ │ │ ├─ archive_data_based.mtml
│ │ │ │ ├─ archive_entry.mtml
│ │ │ │ ├─ archive_web.mtml
│ │ │ │ ├─ index_archive.mtml
│ │ │ │ ├─ index_atom.mtml
│ │ │ │ ├─ index_blog.mtml
│ │ │ │ ├─ index_homepage.mtml
│ │ │ │ ├─ index_javascript.mtml
│ │ │ │ ├─ index_style.mtml
│ │ │ │ ├─ 以下widgetsetセクション以外のmy_plugin.pl内で宣言したファイル全て
緑色の文字はお好きな名前で大丈夫ですが、半角英数のみしか使用できないそうです。プラグインのルールについては私にはよく判りません。。。
水色の文字は、プラグインファイルですが、名前の変更は出来ないそうです。
オレンジ色の文字は、テンプレート実ファイルです。my_plugin.pl内で使用宣言したテンプレートファイルは全て必要となります。拡張子は「.mtml」でなければなりません。bzbellさんのページではセクション名をテンプレートファイル名の頭につけている、とのことだったのでそれに習い私もそうすることにしました。
では、当初の予定だった「テンプレートセット内容の各セクションについて」のご紹介に移ります。。。
indexセクション
前回の記事でも書いたとおり、このセクションではブログのメインページやスタイルシートなどが入ります。
ダウンロードしたサンプルファイルの31行目~37行目がこのセクションにあたります。
«ダウンロードファイル»
index => {
'homepage' => {
label => 'My Homepage',
outfile => 'index.php',
rebuild_me => '1',
},
},
«hiako作成ファイル»
index => {
'index_homepage' => {
label => 'ホーム',
outfile => 'index.html',
rebuild_me => '1',
},
'index_blog' => {
label => 'ブログのメインページ',
outfile => 'index_blog.html',
rebuild_me => '1',
},
'index_style' => {
label => 'スタイルシート',
outfile => 'style.css',
rebuild_me => '1',
},
'index_archive' => {
label => 'アーカイブインデックス',
outfile => 'index_archive.html',
rebuild_me => '1',
},
'index_atom' => {
label => '最新記事',
outfile => 'index_atom.xml',
rebuild_me => '1',
},
'index_rsd' => {
label => 'RSD',
outfile => 'index_rsd.xml',
rebuild_me => '1',
},
'index_javascript' => {
label => 'Javascript',
outfile => 'index_javascript.js',
rebuild_me => '1',
},
},
オレンジ色の文字はテンプレート実ファイルのファイル名となります。ディレクトリ構造の中でオレンジ色にしたテンプレートファイルの拡張子(.mtml)をはずしたファイル名を記述します。このファイル名が、MTLinkタグで使用しているtemplateとなります。
使用例:
<a href="<$mt:Link template="index_archive"$>">アーカイブ</a>
など。
水色の文字はMT管理画面のテンプレート一覧に表示されるテンプレート名です。自分でわかりやすい名前をつけましょう。
緑色の文字はMT管理画面のテンプレート一覧に表示される出力ファイル名です。フォルダを指定することも出来ます。
赤色の文字は再構築を自動にするかしないかです。1が自動で0が手動です。
individualセクション
このセクションでは個別アーカイブテンプレート (ブログ記事・ウェブページ)を設定します。
ダウンロードしたサンプルファイルの38行目~48行目がこのセクションにあたります。
«ダウンロードファイル»
individual => {
'entry' => {
label => 'Blog Entry',
mappings => {
entry_archive => {
archive_type => 'Individual',
preferred => '0',
},
},
},
},
«hiako作成ファイル»
individual => {
'archive_entry' => {
label => 'ブログエントリー',
mappings => {
entry_archive => {
archive_type => 'Individual',
file_template => '%y/%m/%-f',
preferred => '1',
},
},
},
'archive_web' => {
label => 'ウェブページ',
mappings => {
page_archive => {
archive_type => 'Page',
file_template => '%-c/%-f',
preferred => '1',
},
},
},
},
オレンジ色の文字はテンプレート実ファイルのファイル名となります。ディレクトリ構造の中でオレンジ色にしたテンプレートファイルの拡張子(.mtml)をはずしたファイル名を記述します。
水色の文字はMT管理画面のテンプレート一覧に表示されるテンプレート名です。自分でわかりやすい名前をつけましょう。
緑色の文字はマッピングを識別する名前を記述します。’entry_archive(ブログ記事)’か’page_archive(ウェブページ)’かのどちらかです。
黄緑色の文字はアーカイブの種類を記述します。’Individual(ブログ記事)’か’Page(ウェブページ)’かのどちらかです。頭文字を大文字にすることを忘れないでください。
赤色の文字はファイルの出力先・ファイル名を記述します。デフォルトのままでよければ削除できます。出力名はこちらを参考に決めてください。
ピンク色の文字は同じアーカイブタイプを複数のテンプレートで設定している場合、優先したいテンプレートに 1 を設定します。
archiveセクション
このセクションではアーカイブテンプレート(月別アーカイブなど)を設定します。
ダウンロードしたサンプルファイルの49行目~72行目がこのセクションにあたります。
«ダウンロードファイル»
archive => {
'another_entry' => {
label => 'Another Blog Entry',
mappings => {
entry_archive => {
archive_type => 'Individual',
file_template => '%c/%f',
preferred => '1',
},
},
},
'entry_listing' => {
label => 'Blog Entry Listing',
mappings => {
monthly => {
archive_type => 'Monthly',
},
category => {
archive_type => 'Category',
file_template => '%c/index.html',
},
},
},
},
«hiako作成ファイル»
archive => {
'archive_data_based' => {
label => 'アーカイブデータベース',
mappings => {
monthly => {
archive_type => 'Monthly',
file_template => '%y/%m/%i',
preferred => '1',
},
},
},
},
オレンジ色の文字・水色の文字・緑色の文字・赤色の文字・ピンク色の文字はindividualセクションと同様なので、説明を省きます。
紫の文字はマッピングタイプを記述します。
黄緑色の文字はindividualセクションでもありましたが、アーカイブの種類を記述します。individualセクションよりも記述する内容の選択幅が増えます。
そしてマッピングタイプとアーカイブタイプは対になっていなければなりません。その対応表は
bzbellさんのページにあるので、そちらを参考にしてください。
system・module・widgetset・widgetセクションの説明は「MTテンプレートセットの作成手順(4)」をお待ちください。