お仕事でEC-CUBEで作られたサイトを改修することがあります。
知っている人からすれば当たり前なのかもしれませんが、ハマったことがあるのでメモ。
smarties “limited edition” pink / osde8info
Smartyのtplファイル更新時の注意点
今回修正することになったのは、Smartyで作られた拡張子がtplのファイル。
HTML部分の表示を変えただけなのに、テスト環境に反映してみると「システムエラー」の表示が・・・。訳がわからないので、更新前の状態に戻してみました。
それでも「システムエラー」・・・。
これはマズいと思い「システムエラー」の文字からソースを検索して、デバッグしてみました。
すると、tplファイルを新しくすると自動的にコンパイルされて、templates_cフォルダにファイルが作られるんですね。知りませんでした。
自動的にファイルが生成されるということなので、それぞれのフォルダに書き込み権限がないといけません。
という訳で、コンパイルされるファイルが格納されるフォルダのパーミッションを777に変更してみました。すると、恐ろしいメッセージの「システムエラー」は出なくなり、ちゃんと思ったとおりの動きをするようになりました。
Smartyでは「templates」フォルダに対応した「templates_c」フォルダがないといけない仕組みのようです。また1つ勉強になりました。
タグ:EC-CUBE, PHP