利用可能なすべてのテンプレート・タグは MTMLReference プラグインを有効化することにより、管理画面で確認できます。PowerCMS X インストール直後(モデルの作成やカスタマイズを行っていない初期段階)に MTMLReference プラグインが生成したタグリファレンス をこちら に掲載しています。
変数から値を呼び出します。 タグ属性 value を指定した場合は setvar ファンクションタグと同じ動作になります。
テンプレート変数の値を出力します。変数名が文字列であることがわかっている場合、'var'よりこちらのほうがより高速です。
変数名とキーを指定して値を出力します。
<mt:gethashvar name="変数名" key="キー">
// これは、以下と同様です。
<mt:var name="変数名[キー]">
テンプレート変数に値を設定します。
値を翻訳します。管理画面の「フレーズ」に登録の辞書、あるいは locale/ディレクトリ以下の「言語名.json」ファイルのデータを利用します。
現在の日付を出力します。
url属性で指定したURLのデータを出力します。
name属性で指定した配列変数の要素数を返します。
クエリ文字列($_GET)を連結した文字列を出力します。
変数を計算します。
eq: 計算式
<mt:math eq="x + 1" x="$__value__" setvar="__value__">
この例では、__value__が「1」の時、__value__に「2」をセットします。
参考 : https://www.smarty.net/docsv2/ja/language.function.math.tpl
現在のテンプレートに別のモジュールや外部ファイルの内容を含めます。ウェブサイト・パスより上位のディレクトリにあるファイルを含めることはできません。
囲まれたブロックを1回だけ処理して内容を出力します。 name 属性が指定されていて、変数に値が格納されている場合はそちらが出力されます。
タグ属性 name または from で指定された配列またはオブジェクトをループ出力します。
ループの回数に応じて自動的に以下の変数がセットされます
指定された値の間、ブロックを繰り返し出力します。
ループの回数に応じて自動的に以下の変数がセットされます。
このブロックの中は出力されません(テンプレート・コメント)。
ブロックの内容はビルドされず、 そのまま表示されます。
ブロックの内容を出力する代わりに変数に格納します。 これは、何らかのブロックタグに'setvar'モディファイアを指定した時の動作と同じです。
各行ごとに記述された変数をまとめて設定します。キーと値の区切り文字は '='です。
'name'属性を指定すると、その変数名に配列をセットします。
<mt:setvars>
_url = https://powercmsx.jp/
_site_name = PowerCMS X
_site_desc = <mt:var name="description">
</mt:setvars>
setvars と同じ形式で name属性に指定したキーにハッシュ変数を組み立ててセットします。
<mt:sethashvars name="weather_description_ja">
clear_sky=晴天
few_clouds=晴れ
broken_clouds=曇り
shower_rain=豪雨
rain=雨
thunderstorm=雷雨
snow=雪
mist=霧
</mt:sethashvars>
クエリ文字列($_GET)をループ出力します。
条件を満たした場合に内容を出力します。条件を満たさない場合に実行する場合は、unless 条件タグを使用するか、if 条件タグの中で else, elseif 条件タグを利用します。
単に、name属性に指定した変数の値の有無で分岐し、if文より高速です。
if または unless ブロックの中で、条件に一致しなかったときにこのタグ以降の内容が出力されます。
if または unless ブロックの中で、別の条件を指定する時にこの条件タグを利用します。if 条件タグと同じタグ属性が利用できます。
if ブロックの中で、別の条件を指定する時にこの条件タグを利用します。
ifgetvar 条件タグと同じくname属性に指定した変数の値の有無で分岐し、elseif文より高速です。
条件を満たさなかった場合に内容を出力します。if 条件タグと同じタグ属性が利用できます。
name(array) 属性に指定した配列に値 valueを含む場合に値を出力します。
name(array) 属性に指定した変数が配列の場合に値を出力します。
name属性に指定した変数が定義済みの場合に値を出力します。
値をHTMLエンティティに変換または その他の形式にエンコードします。
値が空の時、指定した属性値を出力します。
出力されるべき値を出力せずに変数に格納します。
日付文字列をフォーマットします。
英文形式の日付を Unix タイムスタンプに変換します。
HTMLタグとPHPタグを削除します。
HTML エンティティを適切な文字に変換します。
JavaScriptの文字列として扱えるように値をエスケープします。
値をXMLフォーマットに適した形式にエンコードします。
文字列を大文字にします。
文字列を小文字にします。
最初の文字を大文字にします。
MIME base64 方式でデータをエンコードします。
文字列の先頭および末尾にあるホワイトスペースを取り除きます。
文字列の最初から空白(もしくはその他の文字)を取り除きます。
文字列の最後から空白(もしくはその他の文字)を取り除きます。
指定したキャラクタ数で値を切り捨てます。
参考 => http://www.smarty.net/docsv2/ja/language.modifier.truncate.tpl or https://www.powercms.jp/products/document/modifiers/trim_to.html
'truncate'の別名です。
指定した文字数になるよう、先頭の余白を0で埋めます。
改行を削除します。
モディファイアを付与したファンクションタグの値に含まれる数字 (のみ、もしくは値の一番最初) を適切な形式に ,(カンマ) で区切ります。
フォーマットされた文字列を返します。
改行文字の前に HTML の改行タグを挿入します。
検索文字列に一致したすべての文字列を置換します。
変数に対して正規表現による検索・置換を行います。
正規表現は、PHPマニュアルの preg_replace() の構文を使用してください。
URLをルートからの相対パスに変換します。
文字列の末尾が「/(スラッシュ)」でないときのみ、「/(スラッシュ)」を追加します。
タイムスタンプをPHPの dateファンクションに渡す引数の形式で変換します。
指定した文字数でテキストを改行文字で折り返します。
1を指定すると、ホワイトスペースをトリミングします。 2を指定すると、改行文字をトリミングします。 3を指定した場合、その両方となります。
連続した空行を 1つにまとめます。
テンプレート変数を指定してJSON文字列を出力します。
JSON文字列をデコードして属性値に指定した変数にセットします。
テンプレートをビルドします。
属性値に指定した配列の末尾から要素を取り除きます。このモディファイアを指定したときは、タグは何も出力しません。
文字列を属性値で区切って配列化します。
配列変数を属性値で繋いで出力します。
数字をGB(ギガバイト)、MB(メガバイト)、KB(キロバイト)、Byteいずれかの形式で出力します。