TopMovable Type > バージョン別 > 4.0 > 2007年11月
2007年11月20日

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

November 20,2007 1:27 AM
Tag:[, ]
Permalink

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>
Comments [3] | Trackbacks [0]
2007年11月19日

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

November 19,2007 2:30 AM
Tag:[, ]
Permalink

MTIf タグ等でアーカイブ種別を判定するための、Movable Type 4 で予め用意された予約変数一覧です。

これらは lib/MT/WeblogPublisher.pm に記載されているもので、抜粋したものを下記の表にまとめました(使用方法は後述)。

 YMWDCCAAIP
YMWDYMWD
archive_template
main_template
datebased_archive    
datebased_only_archive            
category_archive           
author_archive           
entry_archive
feedback_template
              
module_category_archives
module_category-monthly_archives
              
module_author_archives
module_author-monthly_archives
              
datebased_yearly_archive
module_yearly_archives
               
datebased_monthly_archive
module_monthly_archives
               
datebased_weekly_archive               
datebased_daily_archive               
category_yearly_archive               
category_monthly_archive               
category_weekly_archive               
category_daily_archive               
author_yearly_archive               
author_monthly_archive               
author_weekly_archive               
author_daily_archive               
entry_template               
page_archive
page_template
               

一番上にある略号の意味は次の通りです。

  • Y:年別アーカイブ
  • M:月別アーカイブ
  • W:週別アーカイブ
  • D:日別アーカイブ
  • C:カテゴリーアーカイブ
  • A:ユーザーアーカイブ
  • I:ブログ記事アーカイブ
  • P:ウェブページアーカイブ

カテゴリーアーカイブとユーザーアーカイブは、年別・月別・週別・日別との組み合わせもあります。

○印がついているのが、そのアーカイブを表示する時に、変数に "1" が設定されていることを示しています。●はデフォルトテンプレートで、テンプレート上に MTSetVar タグで設定されているものを示しています。

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

<MTIf name="datebased_only_archive">
  :
</MTIf>

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

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

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

<MTIf name="entry_archive">
  :
</MTIf>

または

<MTIf name="feedback_template">
  :
</MTIf>

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

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

Comments [3] | Trackbacks [0]
Now loading...
ギターに入った猫
掲載広告募集
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

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

AMN
Categories
Monthly Archives
2020年
2019年
2018年
2017年
2016年
2015年
2014年
2013年
2012年
2011年
2010年
2009年
2008年
2007年
2006年
2005年
2004年
2003年
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
Powered by
Movable Type 6.0.3