![見出し画像](https://assets.st-note.com/production/uploads/images/165032847/rectangle_large_type_2_8c32c4b03eb0fa5efa715baabdf93d3c.png?width=1200)
PowerCMS X テンプレートタグ(MTタグ)のルール
テンプレートタグ
PowerCMS X のビューで使用するテンプレートタグは、ブロックタグ、ファンクションタグの2種類あります。
ブロックタグ
ブロックタグはリスト表示するために使用します。
例えば、以下の記事データをサイトトップページにリスト表示するイメージです。
![](https://assets.st-note.com/img/1733363507-VFlxpsdW9tOjXSLeD0zTHEC2.png?width=1200)
![](https://assets.st-note.com/img/1733363992-DJ6inTVujKQRA3YZwodFs84v.png?width=1200)
ブロックタグのサンプル
<mt:entries>
...
ここにファンクションタグを記述します
...
</mt:entries>
ブロッグタグは最初に「<mt:」を記述して、その次にモデル設定の「複数形」の値を繋げて、最後に「>」で閉じます。
下記のキャプチャは記事モデルで、「複数形」が「Entries」ということが分かります。
「<mt:」「複数形」「>」は、「<mt:Entries>」になります。ブロックタグは大文字小文字を区別しません。
![](https://assets.st-note.com/img/1733364227-YfxOA1VlHtph8b2LE6vdkiTW.png?width=1200)
ブロックタグはリスト表示したいモデルを指定して、そのデータの中身はファンクションタグで指定します。
以下はイメージです。
![](https://assets.st-note.com/img/1733364519-T8VmwAaOJ6vkhsyf5YDj7GcE.png?width=1200)
ファンクションタグ
ブロックタグで指定した中身のデータを表示するために使用します。
ルールは「<mt:」「モデルの名前」「カラムの名前 または ラベル」「>」です。
例えば、記事タイトルを表示したい場合は、モデルの名前が「entry」で、カラムは「title」もしくは「Title」です。ファンクションタグは大文字小文字を区別しませんので、カラムの「名前」と「ラベル」が同じ時は、どちらを使用しても構いません。
![](https://assets.st-note.com/img/1733365099-oFLmGb4MXR1r5jlisWw3VfYC.png?width=1200)
![](https://assets.st-note.com/img/1733365104-8NXrhZ6lFwAPuyTRsCLmdjkW.png?width=1200)
この場合、ファンクションタグは <mt:EntryTitle>になります。
テンプレートタグの記述は小文字でも構いませんので、<mt:entrytitle>でも動作します。
ただし、カラム名にアンダースコア「_」を使用している場合は削除してください。
例:
カラム名が「site_url」の場合は、<mt:EntrySite_url>ではなく<mt:EntrySiteurl> です。
モデル名とカラム名を簡単に探す方法
テンプレートタグを作る際に、モデル編集画面にアクセスするのは結構手間です。
代わりにURLとHTMLソースから確認ができます。
モデル名を探す
モデル名はURLから確認できます。
以下のURLは記事の編集画面ですが、「_model=entry」と書かれている部分がモデルの「名前」です。この場合は「entry」です。
index.php?__mode=view&_type=edit&_model=entry&id=18&workspace_id=2
ただし、モデルの「複数形」はURLとHTMLソースから探せないので、モデルの編集画面で確認してください。
カラム名を探す
Chromeの場合は、編集画面のラベルの上で右クリックして「検証」をクリックします。例は記事モデルの「続き」です。
![](https://assets.st-note.com/img/1733370324-JkVO2QPyIsKiWjbep3mC4vg7.png?width=1200)
Chrome 開発者ツールのパネルが開き、HTMLソースで選択された状態になったと思います。
![](https://assets.st-note.com/img/1733370393-jZ73OU2JMlyDxcnfi4rK9gzb.png)
「label for="◯◯"」の中身である「text_more」がカラム名です。
ただし、この方法でカラム「公開日」を取得すると「published_on_date」になりますが、正しくは「published_on」です。少し曖昧で申し訳ないですが、後述するプラグイン「MTMLReference」が一番正確です。
タイトルのカラム名を探す
タイトルと本文はラベルがないので、調べる方法が異なります。
タイトルはフィールドの上で右クリックして検証メニューを選択します。
![](https://assets.st-note.com/img/1733382703-HgSCOWPwDkxBV15NphmsQdez.png?width=1200)
input id="◯◯" の箇所がカラム名です。この場合は「title」です。
![](https://assets.st-note.com/img/1733382769-YAE2V8kPIJjOTHXzbMwpFuCg.png?width=1200)
本文のカラム名を探す
本文はメニュー付近のホワイトスペースで右クリックして検証メニューを選択します。
![](https://assets.st-note.com/img/1733382954-CQqwP9IoYseAfXbxa0jcSrtg.png?width=1200)
本文欄の 一番外側の div を確認すると、id="◯◯-wrapper" の箇所がカラム名です。この場合は「text」です。
![](https://assets.st-note.com/img/1733383124-t8TPSAb64HOQip10vmjXCkqJ.png?width=1200)
MTMLReference でタグを探す
プラグイン「MTMLReference」を有効にすると[ツール]-[タグリファレンス]のメニューが追加されます。
検索ワードにモデルの名前の「entry」を入力して検索すると、記事モデルのテンプレートタグ情報が一覧で表示されます。
![](https://assets.st-note.com/img/1733708549-OpuRqebxItE4QKfnCN7Vzm15.png?width=1200)
利用できるブロックタグ、ファンクションタグが掲載されているので便利です。記事の「公開日」はカラムのタグは何だったかな?」という時は、ブラウザのページ内検索機能で「公開日」で調べるとタグがヒットします。
![](https://assets.st-note.com/img/1733708721-PA8lQHKybfSrYpZGiFk3TMUx.png?width=1200)
使用できるテンプレートタグは多いので、色々と試してみてください。