カラーミーでフリーページを共通部品にして使い回すTIPS
2024年1月28日
はじめに
カラーミーショップでテンプレート編集やフリーページ作成するとき、各ページで同じ表示を出したいときがあると思います。
そんな場合に使える、フリーページの内容を他のページに埋め込む方法を紹介します。
コード
<{assign var="mydir" value=$file_name|regex_replace:"/[^\/]+\$/":""}>
<{include file=$mydir|cat:"free1.tpl"}>
フリーページのNo.f1を埋め込む場合、上のコードを埋め込みたい位置に記述するだけになります。
free1.tplの数字の部分、埋め込みたいフリーページのNoに変更してください。(No.33の場合、free33.tplになります)
※フリーページを埋め込みで使う場合、非公開のページは使えません。「公開・メニュー非表示」を選択して保存してください。
解説
1行目
自分自身のファイルが保存されているディレクトリ名を取得して、mydirに格納しています。
フリーページのNo.f2の場合、「/xxxxxx/yyyyyy/free2.tpl「から「/xxxxxx/yyyyyy/」を取得して、mydir という変数に格納しています。
2行目
他のフリーページの内容を、その位置に埋め込みます。
1行目で取得したディレクトリ名に埋め込みたいフリーページのファイル名を繋げてフルパスを指定しています。
カラーミーショップは、PHPのテンプレートエンジン「Smarty」のバージョン2が使われているので、assignやincludeの細かい説明が知りたい場合は、公式のドキュメントを参照していただければと。
さいごに
カラーミーショップのページ作成で、1つの記述を各ページで使いまわしたい場合の参考になれば幸いです。