X(Twitter) Zenn GitHub RSS 共有

EC-CUBE

作成日時:2024-08-01以前
更新日時:2024-08-01

概要

オープンソースのEC向けコンテンツ管理システム。

Symfony

MVCパラダイムに従ったWebアプリケーションフレームワーク。

最新verは6だが、EC-CUBE4はver3.4を使ってるとか。

Twig(ツイッグ):テンプレートエンジン
doctrine(ドクトリン):ORM

Symfony - Wikipedia
The Fast Track - 基礎から最速で学ぶSymfony入門 (Symfony 6.2 Docs)

MVC。↓コントローラの一例。

class SamplePageController
{
    /**
     * @Method("GET")
     * @Route("/sample")
     * @Template("Sample/index.twig")
     */
    public function testMethod()
    {
        return ['name' => 'EC-CUBE'];
    }
}

アノテーションとかでルーティングやVIEWを定義したりする。
簡単。

DIもある。EC-CUBE4 DIを利用する - Qiita

Doctrine

ORM。

Twig

テンプレートエンジン。

【PHP】Twigまとめ - Qiita
https://qiita.com/assa/items/4fef2f3abd95248ed626

修正が反映されない場合

だいたいキャッシュのせい。

以下、公式のキャッシュクリア方法。

## path/to/eccube_rootの部分にEC-CUBEのディレクトリパスを記載
cd path/to/eccube_root/
## キャッシュのクリアと生成コマンドを実行

## Symfony コマンドでのキャッシュクリアと生成
bin/console cache:clear --no-warmup
bin/console cache:warmup
## ※キャッシュクリアコマンドがうまくいかない場合は、強制削除をお試しください。

## path/to/eccube_root/の部分はEC-CUBEのディレクトリパスを記載
rm -rf path/to/eccube_root/var/cache/*

テーブル追加/修正関連

doctrineコマンドやTraitを使う。

【EC-CUBE 4】オリジナルテーブルをデータベースに新規で追加する方法 | ノベブロ / NOVEBLO
【EC-CUBE 4】既存テーブルに新しい項目(カラム)を追加する方法 | ノベブロ / NOVEBLO

権限管理

/admin/setting/system/authority

dtb_authority_roleに登録されるので、ここに直接レコードを登録してもよい。

リンク