blogスタッフブログ
HOME > スタッフブログ > CMS >PowerCMS Xのモデルのテンプレートタグを一覧にする

PowerCMS Xのモデルのテンプレートタグを一覧にする

目下PowerCMS Xの案件を進めていて、モデルにカラムが多くカラム名も少々長いため、テンプレートタグを書くことに疲れてきました...。「なんとか楽ができないか」と考えたのですが、モデルの情報はmt_tableテーブルに、カラムの情報はmt_columnテーブルに入っていたので「PADO : PHP Alternative Database Object」を利用してテンプレートタグを一覧にして出力しました!

単純にモデル名とカラム名を繋げたものを出力するだけでなく、テンプレートタグでは省略されるアンダースコアを除去したり、編集表示がリッチテキストの場合はconvert_breaks="auto"を付けたり、リレーションだとブロックタグにしたりと色々工夫しました。またリレーションしているモデルへのリンクを表示して、リレーション先のテンプレートタグも書きやすくしています。
テンプレートタグを一覧した画面

動作サンプルを下記に置きました。(私の研究開発用サーバーで、PowerCMS Xをインストールしたホストとは別のホストに設置しています。データは学習用に作成したものです。)  

以下のコードをサイトルートに設置して$pcmsx_dir_path = '[PowerCMS X設置ディレクトリのパス]';にすると動作します。お試し下さい。なお、使い終わった際は必ず削除するようにしてください。

ちなみに後から気付いたのですが、mt:objectcolsタグでもカラムの情報が取得できるようです。