MovableType4の変数について

Posted by
ぴろり
Posted at
2008/02/23 18:08
Trackbacks
関連記事 (0)
Post Comment
コメントできます
Category
MovableType カテゴリ

 4で大幅に強化された変数関係のタグによって,強力な programmability を備えたですが,公式ドキュメントだけではイマイチ仕様がわからない部分があったり,加えて,掲載されていない様々な隠し機能があるようです。を眺めたり再構築を繰り返すこと億千万回,少し判ったことをまとめてみました。

この記事をはてなブックマークに追加する この記事のはてなブックマーク数 | この記事をlivedoorクリップに追加する この記事のlivedoorクリップ数 | この記事をYahooブックマークに追加する この記事のYahoo!ブックマーク数 | この記事をdel.icio.usに追加する

 変数関係のタグで重要な MTSetVar (mt:setvar)MTGetVar (mt:var)/mt/lib/MT/Template/ContextHandlers.pm にその実装があります。ここを見ると,公式ドキュメントには掲載されていないようなオプションが発見でき,またその仕様についても明らかになる部分が多々あります。

変数名として使用可能な文字列

 変数名として使用できる文字列については,ほとんど制限がないと言えます。以下のは,変数名として使用できる文字列を調べてみた結果です。
 変数名の先頭が $で始まる変数参照,[...]を含む配列参照,{...}を含む連想配列参照以外の制限は特になく,ほぼどのような変数名でも使えるようです。そのため,の構造体を真似て "global.format.timestamp" という変数名を使うもよし(実際は構造体でも何でもありません),ディレクトリパス風に "global/format/timestamp" という変数名を使うもよし,様々なバリエーションが可能です。マルチバイトの変数名も使えるので,語で"短い日付書式"なんて変数名もありです(実用性はともかくとして)

変数名は大文字小文字を区別しない

 先の結果のように自由度が高い変数名は,その大文字と小文字については区別せず同じに扱うため注意が必要です。

隠しオプション(?)

 ドキュメントに掲載されていないオプションがあるようです。

文字列として結合する

 MTの内で多用されているオプションは,ユーザのカスタム中でももちろん使えます。現在の変数の保持する値の前後に文字列として値を結合することができます。

環境変数・パラメータ変数の読出し

 MTの環境設定値やURLに指定されたクエリパラメータを読み出すことができます。こちらは読出し専用で値を書込むことはできません。

未定義の変数

 未定義の変数への代入や参照について。('08/03/07 追記)


この記事を読んだ人はこんな記事も読んでいます ?

その他の関連する記事

この記事のアーカイブ

全ての記事 »
2008年
全てのカテゴリ »
MovableType
全てのタグ »
,

関連記事/トラックバック

関連記事/トラックバックはまだありません

この記事のトラックバック URL

コメントを投稿する

 (必須/公開)
 (必須/非公開)
 

コメントスパム防止のため投稿前に ランダムな数字 ? を入力してから投稿してください。 お手数ですがご協力のほど宜しくお願いいたします。(必須)