2.

EC-CUBE3とは|Symfony2ベースの特徴と2系・4系との違い

編集

EC-CUBE3は、日本製のオープンソースECサイト構築システムのバージョン3系です。独自フレームワークで構成されていた2系から大きく設計を変え、PHPの世界標準フレームワークであるSymfony2のコンポーネントを採用したことで、より保守しやすくカスタマイズしやすいECプラットフォームを目指したバージョンとして2015年に登場しました。本記事では、EC-CUBE3の技術構成や主な機能、2系・4系との違い、そして導入・運用時の注意点を整理して解説します。

この記事の要点
  • EC-CUBE3は、日本で開発されたオープンソースECサイト構築システムのバージョン3系。無料で利用・改変できる。
  • 2系の独自フレームワークから脱却し、Symfony2のコンポーネント(マイクロフレームワークSilex)を基盤に採用。ORMにDoctrine、テンプレートエンジンにTwigを利用する。
  • 商品管理・受注管理・会員管理など標準的なEC機能を備え、プラグインによって決済や機能拡張が行える。
  • 後続の4系はベースをSilexからSymfony本体へ変更しており、3系と4系はアーキテクチャが異なり互換性がない。
  • 3系が前提とするPHPやライブラリは公式サポート期間を終えている世代が中心。2026年時点で新規構築や長期運用には公式の最新バージョンの確認が推奨される

 

EC-CUBE3とは

EC-CUBE3は、日本で開発・公開されているオープンソースのECサイト構築システム「EC-CUBE」のバージョン3系を指します。EC-CUBEはASPサービスでは実現しにくい独自性の高いネットショップを、自社サーバーやレンタルサーバー上に構築・カスタマイズできることを特徴としており、ソースコードが公開されているため無料で利用・改変が可能です。

3系は2015年にリリースされたバージョンで、それまでの2系が採用していた独自フレームワークから設計思想を大きく転換した点が最大の特徴です。EC-CUBEに精通していないエンジニアでも、PHPの一般的な知識を活かして開発・カスタマイズに取り組みやすくすることを狙い、世界的に普及しているフレームワーク技術を取り込みました。あわせて、テストコードの整備やGitによるソース管理など、開発体制そのものも刷新されたバージョンとして位置づけられています。

以下、公式ドキュメントなどで公開されている説明をもとに整理します。EC-CUBEはこれまでに多数のダウンロード実績があり、多くの店舗で稼働してきた実績のあるパッケージです。3系はその中で、モダンなWeb開発の流儀に近づける橋渡し的な役割を担ったバージョンといえます。

技術構成(Symfony2ベースの3系)

EC-CUBE3の技術的な土台は、PHPの著名なフルスタックフレームワーク「Symfony2」のコンポーネント群です。3系では、そのSymfony2コンポーネントの上に構築されたマイクロフレームワーク「Silex(シレックス)」を採用しています。リクエストを受け取ってレスポンスを返すまでの内部処理は、Symfony2のHTTPカーネルが持つライフサイクルに沿って実行される仕組みになっています。

主要な構成要素は次のとおりです。

  • 言語:PHP。3系は比較的古い世代のPHPを前提に設計されています(詳細は後述の落とし穴を参照)。
  • フレームワーク:Symfony2コンポーネントをベースにしたマイクロフレームワークSilex。
  • O/Rマッパー:Doctrine ORM。データベースのテーブルとPHPのオブジェクト(エンティティ)を対応づけ、SQLを直接書かずにデータ操作を行えます。
  • テンプレートエンジン:Twig。画面表示用のHTMLテンプレートをロジックから分離して記述します。
  • データベース:リレーショナルデータベースを利用します。利用可能なエンジンや対応バージョンは導入する環境・バージョンにより異なるため、公式のシステム要件を確認してください。

2系までは独自のフレームワーク上でコアファイルを直接編集してカスタマイズする方式が中心でした。3系ではフレームワークを刷新したことで、コアを直接書き換えずにプラグインや拡張ポイントを通じて機能を追加・変更しやすくなり、保守性の向上が図られています。一方で、SilexやSymfony2、Doctrine、Twigといった外部技術の知識が前提となるため、学習コストの性質も2系から変化しました。

主な機能

EC-CUBE3は、ネットショップ運営に必要となる標準的な機能を備えています。代表的なものを挙げます。

  • 商品管理:商品情報やカテゴリ、在庫、価格、商品画像などの登録・管理を行います。
  • 受注管理:注文の受付、受注一覧の確認、ステータス管理、出荷に関わる情報の管理などを行います。
  • 会員管理:会員登録・ログイン、購入履歴、会員向けの情報管理などを扱います。
  • カート・購入フロー:商品をカートに入れてから注文確定に至るまでの一連の購入処理を提供します。
  • コンテンツ・ページ管理:トップページや各種ページ、デザインテンプレートの管理を行います。Twigテンプレートでフロント画面を構成します。
  • プラグインによる拡張:決済サービスの追加や機能追加を、プラグインの仕組みを通じて行えます。決済まわりでは所定のインターフェースを実装することで、独自の決済手段や処理を組み込める設計になっています。

とくに決済プラグインは実運用上の要点です。クレジットカード決済やコンビニ決済などの外部決済サービスとの連携は、対応するプラグインを導入して実現するのが一般的です。利用したい決済サービスが、導入するEC-CUBEのバージョンに対応したプラグインを提供しているかどうかは、事前に確認が必要です。

2系・3系・4系の違い

EC-CUBEはバージョンごとに基盤技術が大きく異なります。とくに「フレームワークが何か」という点は、カスタマイズ手法やプラグインの互換性に直結する重要な違いです。バージョン間でアーキテクチャが異なるため、原則として上位バージョンへは単純なアップデートではなく移行作業が必要になります。

項目 2系 3系 4系
基盤フレームワーク 独自フレームワーク(PEARベースの自社設計) Symfony2コンポーネント上のマイクロフレームワークSilex Symfony本体(フルスタック)
カスタマイズの考え方 コアファイルを直接編集する方式が中心 プラグイン・拡張ポイント中心へ移行 プラグイン/カスタマイズ領域を整理し拡張性を強化
テンプレート/ORM 独自テンプレート方式 Twig/Doctrine ORM Twig/Doctrine ORM
互換性 3系とは非互換 2系・4系いずれとも非互換 3系とは非互換
位置づけ 長く使われた実績のある世代 モダン化への橋渡し的な世代 基盤をSymfonyへ刷新した後継世代

 

ポイントは、3系が採用したSilexがマイクロフレームワークであったのに対し、4系ではベースをSymfony本体へ変更している点です。これにより、3系で課題とされた部分の多くが4系で見直され、管理画面のデザインなども刷新されました。3系と4系は同じEC-CUBEシリーズでありながら内部構造が異なるため、3系向けに作られたプラグインやカスタマイズがそのまま4系で動くわけではありません。

導入の概要

EC-CUBE3の導入は、おおまかに次の流れで進みます。実際の手順や要件はバージョン・配布形態によって異なるため、必ず公式のシステム要件とインストールマニュアルを確認してください。

  1. 動作環境の確認:サーバーのPHPバージョン、データベース、Webサーバーなどが、導入するEC-CUBE3のバージョンの要件を満たしているかを確認します。
  2. ソースの取得:公式から配布パッケージを入手します。依存ライブラリの管理にはComposerが用いられます。
  3. インストール:データベースを用意し、インストーラまたはコマンドに沿って初期設定を行います。
  4. 初期設定・デザイン調整:店舗情報や決済、配送などの基本設定を行い、Twigテンプレートやデザインを調整します。
  5. プラグイン導入:必要な決済プラグインや機能拡張プラグインを導入します。

レンタルサーバーで運用する場合は、サーバー側で利用できるPHPバージョンやミドルウェアが、3系の前提と合致するかが特に重要になります。

導入・運用時の落とし穴
3系はSymfony2ベースで、4系とは非互換
3系の基盤はSymfony2コンポーネント上のSilexで、4系はSymfony本体です。アーキテクチャが異なるため、3系から4系へは単純なバージョンアップではなく移行プロジェクトとして計画する必要があります。3系向けプラグインやカスタマイズの4系対応可否を事前に確認してください。
前提とするPHP・ライブラリの世代が古い
3系は比較的古い世代のPHPを前提に設計されています。サーバーのPHPが新しいバージョンへ更新されると、公式要件の範囲外となり正常に動作しない場合があります。基盤となるSymfony2やSilexなどのライブラリも世代が古く、これらの公式サポート状況には注意が必要です。
サポート状況は公式での確認が必須
各バージョンやライブラリのサポート期限・セキュリティ対応の状況は時期によって変化します。2026年時点で3系をそのまま使い続けることはセキュリティ面のリスクを伴う可能性があるため、断定はせず、必ず公式の発表とシステム要件を確認したうえで判断してください。新規構築では公式が推奨する最新バージョンの採用を検討するのが安全です。
決済・外部連携のバージョン対応
利用したい決済サービスや外部連携プラグインが、3系に対応しているとは限りません。バージョンが移り変わる中で、3系向けプラグインの提供・更新が縮小していく可能性があるため、必要な連携が確保できるかを事前に確認しておく必要があります。

 

よくある質問(FAQ)

Q1. EC-CUBE3は無料で使えますか?
EC-CUBEはオープンソースとして公開されており、ソースコードを無料で入手・改変できます。ただし、サーバー費用や、利用する決済サービス・有償プラグインの費用、構築・保守を外部に依頼する場合の費用などは別途必要です。ライセンスや利用条件の詳細は公式の情報を確認してください。

Q2. 2系や4系から3系へ、あるいは3系から4系へ簡単に切り替えられますか?
バージョン間でフレームワークなどの基盤技術が異なり互換性がないため、簡単な切り替えではなく移行作業が必要です。とくに3系(Silexベース)と4系(Symfony本体ベース)は構造が異なり、プラグインやカスタマイズの作り直し・対応確認が前提になります。移行は計画的に進めることが推奨されます。

Q3. これから新しくECサイトを作る場合、3系を選ぶべきですか?
新規構築では、長期運用やセキュリティの観点から、公式が推奨する最新バージョンを採用するのが一般的です。3系が前提とする技術世代は古く、2026年時点ではサポートやサーバー要件の面で制約が生じやすいといえます。最終的な判断にあたっては、公式のサポート状況やシステム要件を必ず確認してください。

 

編集
Post Share
子ページ
  1. プログラムの説明(ファイル/ディレクトリ編)
同階層のページ
  1. ワードプレス(WordPress)
  2. EC-CUBE3

最近更新/作成されたページ