前回、テンプレートを、user_dir > package 以下に統合した。

で、もう1つ、手間が減らせる方法を思いついたのが、

class_exの統合。

***

早い話、各ページ上のリンクは、html上のphpを指定しており、
その中身が、どうなっているか、というと、

※/html/index.php

実体はなく、class_exのファイルを読み込んでいるだけで、
LC_Page_Index_Exは、何しているかというと、
親のLC_Page_Indexを呼び出しているだけ。

※/data/class_extends/page_extends/LC_Page_Index_ex.php

LC_Page_Indexの方を、直接書き換えている人も多いと思うが、
アップデートのことを考えると、
LC_Page_Index_Exを、拡張するのが正しい。

※3.0が出たので、2.13系のアップデートはないけど。

 

いろいろやっていて、ふと閃いた。

 

拡張するときは、なにも、LC_Page_Index_Ex.phpでなくても、
index.phpに、LC_Page_Index_Ex.phpを書き足して、
そこで、拡張クラスを書けば良いんじゃない???

 

つまり、こういうこと。

※文中のコメントに書いているとおり。

こうすることで、
_data > class_extends > page_extends を開かなくても、
URLで指し示されたPHPを、直接開けば、編集できるようになるわけだ。

ということで、

と合わせて、

なんで、こういうふうに、元々の設計しなかったんだろう???

PS.
ところどころ、ajaxとかつかってあるが、(特にスマホ・テンプレ)
使いにくくて仕方ない!
PC用とスマホ用と、2つ修正するのは、面倒だが、
フレキシブルテンプレートを入れてみるも、
さらにajaxてんこ盛り+CSSの嵐なので、諦めた・・・・

ECCUBE2.13系のClass_Exのカスタマイズ
Tagged on: