ECCUBEの特定パス指定Smartyタグと、メールテンプレートフォルダやデータフォルダなどの場所(2.13.5)
2016年06月26日 公開

どうもYamadaです。
最近どうも食事後に動悸が激しくなり、ついにはぶっ倒れました。
普通の内科で検診を受けても何ともないといわれ、4件目の病院で玉ねぎが原因である可能性があるという意味不明なことを言われて、調べると世の中には玉ねぎで動悸が激しくなる人が一定数いるみたいですね。
そんなことはさておき、ここ2年でECCUBEを3件テンプレからシステムの変更までいじり倒したのですが、後でみて間違いなくコピペするであろうものをメモしておきます。バージョンは(2.13.5)です。
だいたい一番使うやつ
このルート指定で一番使うのはやっぱりHTML側のルート。Dataフォルダ側はよっぽど濃いシステム開発がない限りあんまり使わないんじゃないかな。
<!--{$smarty.const.TOP_URLPATH}-->
/html/
このあとどっかのフォルダ指定して利用する。
packagesテンプレートフォルダの中の画像を指定すると、テンプレートを変更したときルートを見失うので、html直下にimgフォルダ作って回避させたりするのにも利用できる。
<!--{$smarty.const.ROOT_URLPATH}-->
/html/
こっちはHTMLとDataフォルダを思い切りわけて変な場所にご案内している謎のウェブサイトのリニューアルを頼まれたときにつかっただけで、ほとんど使わないかな・・・。
<!--{$TPL_URLPATH}-->
/html/user_data/packages/default/
こっちもよく使う。正直IMEに登録してた。
<!--{$smarty.const.USER_TEMPLATE_REALDIR}-->
html/user_data/packages/
こちらも同じくIMEに登録してた。
<!--{$smarty.const.HTTP_URL}-->
http://(ドメイン)
基本的に$smarty.const.TOP_URLPATHの使い勝手が良いため、こっちはあんまり使っていないけど、どっちがいいんでしょうね。
テンプレート開発環境と、現行運用しているサイトとの差がある場合は、こっちを使うべきではないし、あとあと面倒になることが多いので、出番はそこまでない。
<!--{$smarty.const.HTTPS_URL}-->
https://(ドメイン)
httpsを指定できるタグなので、出番は多少ある。
そこそこ使うやつ
<!--{$smarty.const.P_DETAIL_URLPATH}-->
/html/products/detail.php?product_id=
商品ページを呼び出すのに利用する。
dataフォルダ
<!--{$smarty.const.DATA_REALDIR}-->
/data/
<!--{$smarty.const.CLASS_REALDIR}-->
/data/class/
<!--{$smarty.const.CLASS_EX_REALDIR}-->
/data/class_extends/
<!--{$smarty.const.TEMPLATE_REALDIR}-->
/data/Smarty/templates/default/
<!--{$smarty.const.TEMPLATE_ADMIN_REALDIR}-->
data/Smarty/templates/admin/
開発時には使うけど、テンプレートデザインをいじるときはほとんど使わないかな。
正直つかわないやつ
イメージアップロードフォルダ、添付フォルダ
<!--{$smarty.const.IMAGE_TEMP_URLPATH}-->
/html/upload/temp_image/
<!--{$smarty.const.IMAGE_SAVE_URLPATH}-->
/html/upload/save_image/
<!--{$smarty.const.MOBILE_IMAGE_URLPATH}-->
/html/upload/mobile_image/
独自アップローダーを開発した場合、独自にフォルダを作っちゃうのが普通です。わざわざこの大量の画像フォルダの中に入れてわかりにくく管理するなんてことがないので、微妙に使わない。
shopmng/とcart/のフォルダ
<!--{$smarty.const.CART_URLPATH}-->
/html/cart/
<!--{$smarty.const.ADMIN_LOGIN_URLPATH}-->
/html/shopmng/
<!--{$smarty.const.ADMIN_PRODUCTS_URLPATH}-->
/html/shopmng/products/
<!--{$smarty.const.ADMIN_ORDER_URLPATH}-->
/html/shopmng/order/
正直このshopmng/とcart/はあまり使う機会がないかなぁ。
あれをいじりたいときどこいじるの
いじりたい時に考えることは2つ。
システムをいじりたいのか、デザイン、いわゆるHTML部分をいじりたいのか。
- システムをいじりたいならclassを
- HTMLをいじりたいならSmartyと覚えるのが早い
システムをいじりたいならclassを
だいたいECCUBEの「URL」のトップレベルドメイン直下のフォルダ名。
/cart/
/products/list.php
/products/detail.php
/shopping/
などを参照したのち、
FTPでサーバールート、/data/class/pages/の中を開けば、その中に各種ファイルがある。
例えば
http://(ドメイン)/products/detail.php
がいじりたいなら
/data/class/pages/products/LC_Page_Products_Detail.php を開けばそれだ。
HTMLをいじりたいならSmarty
PHPの動作ではなく、そもそも単にデザインをだけをいじりたいのであれば、手っ取り早いのはSmartyフォルダです。
/data/Smarty/
さきほどの http://(ドメイン)/products/detail.php のデザインだけをいじりたいなら
/data/Smarty/templates/(現在のテンプレートフォルダ名)/products/detail.tpl
こちらを開けばいい。
classフォルダとの違いを言えば、途中templatesフォルダを開いたのち、管理画面のほうはadminフォルダに格納されて、それ以外のページはすべて、「現在のテンプレートフォルダの名前」の中に納まっているので注意が必要です。
ブロックフォルダ
ブロックフォルダはわりと重要なパーツで、実際に管理画面からログインして、そのなかで直接HTMLをいじることも可能です。
ですが、サイトをリニューアルするときなど、不必要なものは消したいし、できればバックアップもとっておきたいパーツでもあります。
そのため、このブロックフォルダの場所を覚えておくと便利です。
ブロックフォルダ
/data/Smarty/templates/(テンプレート名)/frontparts/bloc/
この中に納まっているのがブロックフォルダです。
こいつをバックアップしておけば、何かあってもすぐに復旧できます。
ただし、テンプレートをチェンジすると、現在の「デザイン管理→PC管理→レイアウト設定」が全部崩れますのでチェンジする前は、各種ページどんなレイアウトだったかを、スクリーンキャプチャに残したり、印刷しておいがほうが無難です。
メールテンプレートフォルダ
メールテンプレートフォルダは、自動返信メールの時に利用するテンプレートです。
このファイルを直接いじれば、返信メールはかなりカスタマイズすることが可能になります。
メールテンプレートフォルダ
/data/Smarty/templates/(テンプレート名)/mail_templates/
この中のファイルをいじってそれを適応する場合は、管理画面ログイン後、「システム管理」→「マスターデータ管理」を開きます。
その後、メニューから、「mtb_mail_tpl_path」を選び、どのメールにどのテンプレートを利用するのかを、明記する必要があります。
ちなみに「どのメール」というのは、管理画面ログイン後、「基本情報管理」→「メール設定」から、作成することができる。
とりあえず今日はこの辺で。
それでは、また。