現在、EC-CUBE は、2系(2.13系) と3系が混在しています。両方を導入した経験から、2系と3系の違いについて語ってみます。こちらの記事は昨年書いた記事ですが、大幅に加筆訂正しました。

EC-CUBE に 2.13系と3系が混在しているのはなぜか?

自動で、アップデートができない

EC-CUBE 3系が登場したとき、開発元であるロックオン社は、EC-CUBE 2.13系の開発を終了すると宣言しました。ところが、EC-CUBE 3系 と EC-CUBE 2.13系は仕組みが全く異なるため、WordPressのような自動更新ができず、ほぼ作り直しになってしまいます。新しく作り直すためには、かなり予算が必要になってしまいますが、バージョンが変わるというだけの理由で予算を取るのは難しいです。

EC-CUBE 3系が使いにくかった

EC-CUBE 3系は、EC-CUBE 2.13系に比べて、機能が大幅にカットされています。インストール後にプラグインを追加する方式を取っていますが、当然のことながら、EC-CUBE 3系が登場した直後はプラグインが少なく、機能に見劣りのする状態がしばらく続きました。現在、3系のプラグインもだいぶ充実してきていますが、そもそも、インストールしてから追加するというのでは、あまり使い勝手が良いとはいえないでしょう。

またこの後にも述べますが、カスタマイズするときに、EC-CUBE 3系は構造が難しくなっていて、相当な知識が必要になってしまいます。

以上のことから、EC-CUBE 2.13系を運用している多くの会社から熱い要望があったようで、途中から方針転換となり、EC-CUBE 2.13系も継続して開発することになりました。その結果、二つのバージョンが混在する状態となっているんです。

2.13 系の開発継続については、以下の記事に詳細が載っています。

株式会社ロックオン(本社:大阪府大阪市 代表取締役社長:岩田 進、以下ロックオン)は、国内No.1 EC構築オープンソース(※1) EC-CUBE の旧バージョンであるEC-CUB

EC-CUBE 2.13 系の特徴

安定している

EC-CUBE の脆弱性リストを見ると、3系は短期間に脆弱性がみつかっていますが、2.13系は、大きな脆弱性はほぼ見つからなくなっていて、安心して運用できることが分かります。

カスタマイズしやすい

構造がシンプルで、ノンプログラマーでもデザインが変更しやすくなっています。

また、EC-CUBE 2.13系は登場してから今までの長い間にたくさんの会社での導入実績があり、カスタマイズ情報がネット上にたくさんあります。不具合が起こった時の解決策も、検索すれば見つかることが多いです。

デザインが古い

一方、デメリットもあります。致命的なのがデザインの古さです。レスポンシブにも対応していないため、PC用・スマホ用・携帯用それぞれのテンプレートを作らなければならず手間がかかります。レスポンシブ対応のテーマも配付されていますが、こちらを導入すると、あまりにもテンプレートの構造が変わってしまうため、他のプラグインが動かなくなる可能性が高くなります。

EC-CUBE 3系の特徴

構造が難しい

EC-CUBE 3系は、管理画面にもレスポンシブテーマが採用されていて2系とはかなり違っているように見えますが、メニュー構成を見ると2系と似ています。データベースを見ても、テーブルの名前が 2系のときと同じなので、それほど大きく変わったような感じはしません。ですが、システムはガラッと変わってしまっています。大きく変わった点は以下のとおりです。EC-CUBE 2系のときと比べて、カスタマイズのハードルが高くなっています。

Silex の採用

EC-CUBE 3系 には、Silex というチームフレームワークが採用されています。Silex を知らないと、EC-CUBE 3系のファイルを開いても何がなんだか分かりません。2系の時は、PHP を多少知っていればカスタマイズできたのですが、3系は導入する前に Silex の勉強が必要です。しかも、Silex は、4年に1回大幅なバージョン変更があります。EC-CUBE 3系は登場してまだ4年経っていないので、Silex のバージョンアップのときどうなってしまうのか、すごく心配しています。

テンプレートエンジンが、Twig

EC-CUBE 2系のテンプレートは Smarty でしたが、EC-CUBE 3系では Twig に変わりました。Smarty に慣れていると、どうやって値を渡しているのかが分からず、やはり勉強が必要になります。

データベースは Doctrine

EC-CUBE 3系では、データベースとの連携に Doctrine が使われています。これがまた難しいですし、バグがあったりするので、結局 Doctrine  を使わず、SQL を書くはめになったりします。

機能が減った

はじめにも書きましたが、EC-CUBE 3系は、必要なものだけを後から追加すればよいという考え方に変更になっているため、EC-CUBE 2.13 系には標準でついていた「メルマガ発行機能」「売上集計機能」「ダウンロード販売機能」などがゴッソリなくなっています。

テンプレートが洗練されている

もちろん悪いことだけではなく、デザインは 2.13系 より 3系 に軍配が上がります。レスポンシブ対応になりましたし、デザイン面は特にカスタマイズしなくても、そのまま使っても良いぐらい洗練されました。

2.13系 と 3系 で迷った時はどうすれば良いか?

3系 と 2.13系で迷ったときの判断基準は以下のとおりです。

カスタマイズする予定がない

カスタマイズでよくあるのが送料設定や商品登録部分です。お店のやり方にシステムを合わせるのでは、予算がいくらあっても足りません。全国一律の送料にするなど、シンプルな送料設定で、商品も複雑でなければカスタマイズしなくて済みますので、EC-CUBE 3系をお勧めします。

より多くの機能を必要とする

2.13 系はカスタマイズしやすいため、請求書発行や宅配便伝票を発行できるようにするなど、バックオフィス機能を追加することもあります。予算が取れる場合に限りますが、Amazon や 楽天並みに充実した機能をネットショップシステムに求めるのであれば、2.13系がお勧めできます。

そもそも、EC-CUBE である必要があるのか?

このブログは、EC-CUBE の記事が人気で、EC-CUBE 導入のご相談を受けることがあるのですが、今のところ、ほとんどのケースで、EC-CUBE 以外のカートシステムをお勧めしています。実は、EC-CUBE は年内にもう一つのバージョンが発表される予定で、今後どうなるのか見通せない状況です。

EC-CUBE は、本体自体は無料ですが、ネットショップをオープンさせるまでの設定が大変で、どうしても構築費用が高くなってしまいます。それよりは、月々数千円で使えるレンタルカートの方が割安なことも多いです。

もちろん、オーナーさん自らが構築するのでしたら構築費用はかかりませんが、その分、時間を使うことになります。ネットショップのオーナーさんは、ショップの構築に時間を使うより、経営戦略を練ることに時間を使うべきなんじゃないかなぁと思います。