Zen Cartハイエンド版の特徴のひとつに「addon_modules(アドオン・モジュールズ)」という仕組みによる機能追加があります。
Zen Cartでは、機能追加をモジュール(プログラム部品)で行うことができますが、addon_modulesでは、
といったメリットがあります。
従来のZen Cartでは、新しいモジュールを入れるときに
modules/pages/create_account/ admin/categories.php
など、Zen Cartのコアの修正が必要になるケースがあります。
このような場合は、バグのパッチプログラムを当てる際などアップグレードが必要なとき、手動でマージしなければなりません。
それに対して addon_modulesの仕組みでは、追加ファイルはすべて
includes/addon_modules/
の配下に収まります。管理系のファイルも同様です。
includes/addon_modules/ の下にモジュール名、その配下ディレクトリはざっくり下記のような構成になっています。
includes/addon_modules/feature_area/ ←feature_areaというモジュール名 configure.php ←設定ファイル database_tables.php ←テーブルの追加など module.php ←このモジュールのメイン admin.php ←feature_areaの独自管理画面 languages/jpanese.php ←言語ファイル languages/english.php templates/template_default/templates/block.php ←ユーザー側表示用テンプレ templates/template_default/css/style.css ←ユーザー側CSS templates/template_default/jscript/block.php ←ユーザー側JS
このように、モジュール内に決まった命名規則でファイルを配置しておくだけでよいので、コアファイルを修正する必要がなく、メンテナンス性に優れているのです。
▲追加モジュールの管理画面 (※図版はクリックで拡大します)
ファイルを設置したモジュールは、管理画面の「追加モジュールの管理」からインストールを行うことで有効になります。このインストール時に、モジュールが利用するDBテーブルを追加するなどの処理がバックグラウンドで実行されます。
▲FeatureAreaモジュールの設定 (※図版はクリックで拡大します)
インストール後は、そのモジュール専用の管理画面でモジュールの設定を変更することなどができます。
▲FeatureAreaモジュール専用管理画面 (※図版はクリックで拡大します)
上記の作業でモジュールの設定は完了しましたが、ユーザー側画面のどの領域に出力するかはまだ指定していませんので表示されません。
次回は、addon_modulesのユーザー側の設定方法について紹介します。