⚠️投稿日または最終更新日から5年以上経過している内容です。
EC-CUBE2系 のままでは、PHP7 の恩恵を受けれないことから…、
ついに EC-CUBE3系 を実務で使うことにしました。
プログラムがまったくもって新しくなっているので、
インストールの時点で数多くググることに...(>_<)
時間はかかりましたが、なんとかインストールしつつ、/html/ フォルダを URL から消したり、
テンプレートをカスタマイズできるようになりました。
そこで「レイアウト管理」にてブロックを設置できる場所を増やせないかと
ソースを追って、ちょっと追加してみたところ結構簡単に実装できたので、
メモしておきます!
バージョンは、EC-CUBE 3.0.15 になります。
#contents_top と #header の間に場所を設けたかったので、
#contents_over というのを作ることにしました。
まず、配置IDを追加します。
0~9はすでに使用済みなので、10を追加しました。
/src/Eccube/Entity/PageLayout.php
次に配置IDを取得するメソッドを定義します。
/src/Eccube/Entity/PageLayout.php
次は、管理画面のHTMLを追記します。
下記ファイルの 123行目ぐらいに TARGET_ID_CONTENTS_TOP 用の HTML があるので、
それを丸ごとコピペして利用します。
- TARGET_ID_CONTENTS_TOP を TARGET_ID_CONTENTS_OVER へ
- ContentsTopPosition を ContentsOverPosition へ
/src/Eccube/Resource/template/admin/Content/layout.twig
次は、管理画面の JavaScript を追記します。
下記ファイルの 40行目ぐらいに、ID を配列で指定している箇所があるので、必要なIDを追記します。
/html/template/admin/assets/js/layout_design.js
最後に、管理画面の Css を追記します。
下記ファイルの 2899行目ぐらいに、疑似要素の content に ID名を記述している箇所があるので追記します。
/html/template/admin/assets/css/dashboard.css
以上です。
データベースの変更なしでこういった作業ができるようになっているので、
すごく進化しているな~!と感じることができるカスタマイズでした。
ただ管理画面はちょっと見ずらいと思うので、カスタマイズをどんどんやっていきたいですね。