CS-Cart アドオンの構成

まず、アドオンには決められた作法があります。

ディレクトリ構成、ファイル構成、それらの名称が下記のように定められています。

 

ディレクトリ構成

/addons/[アドオン名]
アドオンのPHPファイルを格納するディレクトリ

/var/skins_repository/base/customer/addons/[アドオン名]
ショップフロント側で使用するアドオン用スキンファイルを格納するディレクトリ

/var/skins_repository/base/admin/addons/[アドオン名]
管理者用パネル側で使用するアドオン用スキンファイルを格納するディレクトリ

/var/skins_repository/base/mail/addons/[アドオン名]
アドオン用Eメールテンプレートを格納するディレクトリ

※ /addons/[アドオン名] 以外のディレクトリはアドオンの構成上必要な場合のみ作成(下位階層も同様)

ファイル構成

/addons/[アドオン名]のディレクトリに配置するファイルは下記の通り。

addon.xml
アドオンの設定ファイル。アドオンのインストールやアンインストールに必要。

func.php
アドオンのコントローラー内で使用する関数を定義するファイル。

init.php
アドオンで使用するフックを登録するファイル。

config.php
アドオンで使用する定数や各種設定値を登録するファイル。

/controllers
アドオンで使用するコントローラーおよびCS-Cart標準コントローラーのプレコントローラーおよびポストコントローラーを格納するディレクトリ。

/schemas
管理者用パネル内のメニューや管理者に付与する権限など、既存のスキーマを拡張するファイルを格納するディレクトリ。

 

全てのアドオンは上記のような構成で成り立っています。

上記のディレクトリ構成を見ると分かりますが、/var/skins_repository/以下に置くディレクトリの下位階層について触れていません。(テンプレートでの表示側ですね)

これらは必要に応じてと書いていますが、おおざっぱに言うとCS-Cart本体のディレクトリ構成に準じた命名規則と配置で設置します。
admin側、customer側、mail以下ではその構成が異なりますが多くのアドオンは下記のようなディレクトリを持っています。
(一部CS-Cart本体に無いディレクトリ名を使っている物もあります。が理由が無い限りCS-Cart本体のディレクトリ構成に則った方が良いと思います。)

/var/skins_repository/base/admin/addons/[アドオン名]以下

  • common_templates
  • hooks
  • views

/var/skins_repository/base/customer/addons/[アドオン名]以下

  • blocks
  • hooks
  • views

/var/skins_repository/base/mail/addons/[アドオン名]以下

  • hooks

 

まずはアドオンがどういった構成で成り立っているのか上記を念頭においてください。

 

下記は実際のアドオンの構成例です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.