TopMovable Typeカスタマイズその他 > 予約変数一覧 for Movable Type 4(その2)
2007年11月20日

予約変数一覧 for Movable Type 4(その2)

Posted at November 20,2007 1:27 AM
Category:[その他]
Tag:[, ]

MTIf タグ等でアーカイブ種別を判定するための、Movable Type 4 で予め用意された予約変数一覧です。「予約変数一覧 for Movable Type 4(その1)」でまとめたものは変数に"1"が設定されているものですが、今回は、

archive_class

という変数に設定されている文字列をまとめました。
大体お分かりと思いますが、この変数はアーカイブ種別を判定するためのものです。

前回同様、lib/MT/WeblogPublisher.pm に記載されています(使用方法は後述)。

アーカイブ種別変数名
年別datebased-yearly-archive
月別datebased-monthly-archive
週別datebased-weekly-archive
日別datebased-daily-archive
ブログ記事entry-archive
ウェブページpage-archive
カテゴリcategory-archive
年別カテゴリcategory-yearly-archive
月別カテゴリcategory-monthly-archive
週別カテゴリcategory-weekly-archive
日別カテゴリcategory-daily-archiv
ユーザーauthor-archive
年別ユーザーauthor-yearly-archive
月別ユーザーauthor-monthly-archive
週別ユーザーauthor-weekly-archive
日別ユーザーauthor-daily-archive

例えば、アーカイブ種別が「月別カテゴリ」であることを判定したい場合は、

<MTIf name="archive_class" eq="category-monthly-archive">
  :
</MTIf>

とテンプレート(またはテンプレートモジュール)に書きます。

このタグが書かれたテンプレートやテンプレートモジュールが「月別カテゴリ」として実行される場合、MTIf タグのブロック内部が実行されます。

アーカイブ種別が「ブログ記事」であることを判定したい場合は

<MTIf name="archive_class" eq="entry-archive">
  :
</MTIf>

と書きます。このタグが書かれたテンプレートやテンプレートモジュールが「ブログ記事」として実行される場合、MTIf タグのブロック内部が実行されます。

これらを利用すれば、独自の変数を用意する必要はありません。

MTArchiveType との違い

Movable Type では MTArchiveType タグが用意されているので、これを使って判定することも可能ですが、実装がやや面倒です。
例えば、アーカイブ種別が「ブログ記事」であることを判定したい場合は、

<MTSetVarBlock name="archive_type"><$MTArchiveType$></MTSetVarBlock>
<MTIf name="archive_type" eq="Individual">
  :
</MTIf>

となります。MTSetVarBlock タグで値を任意の変数 archive_type に設定する分が余分に必要です。

変則的な判定方法

like 属性を用いて、各アーカイブ(日付・カテゴリ・ユーザー)の月別アーカイブだけを取得するには次のように記述します。

<MTIf name="archive_class" like="monthly">
  :
</MTIf>
Posted by yujiro
関連記事
人気エントリー
トラックバックURL


コメント

いつもありがとうございます。
kenji1020と申します。

movabletype4.01を導入したこともあり、最近は小粋空間さんを見っぱなしです。
勉強になります。

お忙しい中申し訳ございませんが、ご質問させてください。


現在、MTのウェブページをいくつか作成し(例:会社概要・サイトについて・スタッフ紹介など)ようとしている段階なのですが、それぞれ違ったデザイン(テンプレート)にしようとい考えています。

ウェブサイトのアーカイブテンプレートは1つしかないので、作りたいウェブページに合わせて新規に自分でアーカイブテンプレートを作成しようと思いますが、

作成したアーカイブテンプレートを、それぞれウェブページに割り当てていくにはどのようにすれば宜しいでしょうか?


※話は少しそれますが、
現在、カテゴリーページ(2階層目)は、もともとある「ブログ記事リスト」というテンプレートとは別に、「カテゴリーアーカイブ」という名前の自分で作ったテンプレートを使用しています。
こちらの編集画面のアーカイブマッピングに緑のチェックが入っていますが、なぜもともとのブログ記事リストが無視されて、私が作った方が反映されているのかも微妙にわからないのです・・緑のチェックがポイントなのでしょうか?


色々サイトを見ていると、タグや、ファイル名などで指定するという風に書いていたりする所がありましたが、詳しく掲載されていないので困っています。


宜しくお願いいたします。

[1] Posted by kenji1020 Author Profile Page : December 3, 2007 7:35 PM

>kenji1020さん
こんにちは。
ご要望の内容は別途エントリーしたいと思います。
すいませんが少々お時間ください。

また、カテゴリーやウェブページのデザインを切り替えるためにアーカイブを新しく作成するのは避け、ひとつのテンプレート内で(MTIf タグ等で)振り分ける方法をお勧めします。
この辺りの詳細についてはチェック(チェックボックス)の話も含めて別に詳しく紹介したいと思います。

それではよろしくお願い致します。

[2] Posted by yujiro Author Profile Page : December 4, 2007 11:30 AM

yujiro様>

ご返信ありがとうございます。
ひとつのテンプレート内で振り分ける方法が良いのですね。

それではエントリー楽しみにしています!

失礼します。

[3] Posted by kenji1020 Author Profile Page : December 4, 2007 11:56 AM
コメントする

*必須



お知らせ:2008年5月現在、多忙のため、7月頃までコメントを速やかに回答できない状態が続きます。ご質問の内容によっては回答が7月以降になる可能性がありますので、予めご了承ください。

太字 イタリック アンダーライン ハイパーリンク 引用

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)

Now loading...
Entries of this Category
QRcode

現在停止中です
携帯電話からこのQRcodeを撮影することで携帯用URLを取得することができます

URI for cellular phones
ギターに入った猫
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

このブログをメールで購読する by:FeedBurner

loading ...
BlogPeople
Now loading...
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
クリエイティブ・コモンズ・ライセンス
Powered by
Movable Type 4.1
 
List Me!