ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
EC-CUBE3は、日本製のオープンソースECサイト構築システムのバージョン3系です。独自フレームワークで構成されていた2系から大きく設計を変え、PHPの世界標準フレームワークであるSymfony2のコンポーネントを採用したことで、より保守しやすくカスタマイズしやすいECプラットフォームを目指したバージョンとして2015年に登場しました。本記事では、EC-CUBE3の技術構成や主な機能、2系・4系との違い、そして導入・運用時の注意点を整理して解説します。

| この記事の要点 |
|---|
|
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の導入は、おおまかに次の流れで進みます。実際の手順や要件はバージョン・配布形態によって異なるため、必ず公式のシステム要件とインストールマニュアルを確認してください。
- 動作環境の確認:サーバーのPHPバージョン、データベース、Webサーバーなどが、導入するEC-CUBE3のバージョンの要件を満たしているかを確認します。
- ソースの取得:公式から配布パッケージを入手します。依存ライブラリの管理にはComposerが用いられます。
- インストール:データベースを用意し、インストーラまたはコマンドに沿って初期設定を行います。
- 初期設定・デザイン調整:店舗情報や決済、配送などの基本設定を行い、Twigテンプレートやデザインを調整します。
- プラグイン導入:必要な決済プラグインや機能拡張プラグインを導入します。
レンタルサーバーで運用する場合は、サーバー側で利用できる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年時点ではサポートやサーバー要件の面で制約が生じやすいといえます。最終的な判断にあたっては、公式のサポート状況やシステム要件を必ず確認してください。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
- ワードプレス(WordPress)
- EC-CUBE3
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?