このエントリはMagento Advent Calendar 2018の25日目です。

現在、Magentoにはメンテナンスされているバージョンがいくつかあります。
弊社に寄せられるお問い合わせにも様々なバージョンに関するものがありますが、今回は特に「これから新しくMagentoをベースにしたサイト構築の場合に選ぶべきバージョンはどれか」ということについて取り上げたいと思います。

現在メンテナンス中のMagentoのバージョン

最初に、現在メンテナンスがされているMagentoのバージョンは下表のとおりです。
メンテナンス中としているのは、

  • 不具合修正のリリースが行われている
  • セキュリティ修正のリリースが行われている
  • セキュリティパッチが提供されている

このいずれかをもってメンテナンス中としています。

Magentoバージョン メンテナンス期限 メンテナンス対象
CE 1.5.x ~ 1.9.x 2020年6月 セキュリティパッチのみ
EE 1.9.x ~ 1.12.x 2020年6月 セキュリティパッチのみ
EE 1.13.x, 1.14.x 2020年6月 セキュリティパッチ
不具合修正
2.1.x 2019年6月 セキュリティ修正
不具合修正
2.2.x 2019年12月 セキュリティ修正
不具合修正
2.3.x 2020年11末(予定) セキュリティ修正
不具合修正

Magento2.3系はリリースされたばかりで正式なメンテナンス期限は発表されていませんが、本来のメンテナンスサイクルはリリース後2年であることから、2020年11月末としています。
Magento2.3系の動作対象に含まれているPHP7.2系のメンテナンス期限が同じく2020年11月末なので、2.3系がPHP7.3系に対応しない限りはこの期限が延長されることはないものと思われます。

2020年を見据えた一番投資対費用効果の高いバージョンはどれか

では、2020年を見据え、Magentoのバージョンを選ぶとすると、どれが適当でしょうか?
表からすると、

  • CE 1.9系 または EE1.14系
  • 2.3系

のどちらかということになります。
ただし、EE1.14系は現状新規にライセンスを入手することは不可能で、Magento1系で新規に構築するのであれば、CE1.9系を選ぶことになります。

CE 1.9系

Magento CE 1.9系は4年以上メンテナンスされている、相当に枯れたMagentoのバージョンです。
最新の1.9.4.0ではPHP7.2にも対応しているので、プラットフォームとしては2020年まできちんと動作ができます。
過去の資産が十二分に活用できるという意味では間違いではありませんが、すでに3年以上目立った新機能追加も行われていません。本来であれば2018年11月末日でメンテナンスが終了するはずだったバージョンなので、この先大幅な進化は見込めません。

また、PHP7.2系に対応したとはいえ、エクステンションやテーマの動作確認は自分で行う必要があります。
PHP7.2系のパッチ適用対象はCE 1.9.2以降であることと、パッチ自体が2018年9月半ばのリリースであることを考慮すると、ある意味「お情け」で出されたものであることは間違いないと思います。

ですから、以下のケース以外では選択するメリットはあまりないと思います。

  • 超短期にサイトを立ち上げることが優先である場合
  • プロモーションサイトのようなすぐにサイトをクローズするような場合

「1.9系が2020年6月までセキュリティパッチが出るから選んでも良いのだ」と考えてはいけません。
一度でもサイトをオープンしてしまえば、メンテナンス期限までの間にMagento2系へ移行するか、別のプラットフォームに移行するかを考える必要に迫られます。正直な話、2回サイトを作ることになるので、コストが2倍かかります。

2.3系

Magento2.3系は2015年にリリースされたMagento2系の最新リリースです。
非常に多くの不具合修正や、新機能を盛り込んだリリースで、2020年11月末まで安心して利用できる唯一のバージョンです。

ただし、構築や運用にはMagento2系特有の制約があり、十分な経験のある技術者や、適切なサーバー環境がなければその真価を発揮することはできません。
総じてMagento2系は1系よりもサーバー環境に対する要求事項が多く、本番反映に関しても様々な手順があります。
1系よりエンタープライズ用途を指向しているだけに、ここは致し方ない部分ではありますが、2系を選ぶ場合は1系よりもサーバー費用を覚悟しておく必要があるでしょう。

また、日本語向けの場合は2018年末の段階で日本語化エクステンションの正式版はリリースできていません。
弊社とMagneto Community Engineering Team共同で、日本語化エクステンションを2.3系からMagento公式のオプションモジュールとしてリニューアルする予定で開発を進めてきたのですが、それがまだ正式版にできていないことが原因です。
2019年の早い段階でリリースできるようにするべく作業を進めておりますので、2.3系をお考えの方は今しばらくお待ちいただければと思います。

2.1や2.2を選んではいけないのか

Magento2.3より前のバージョン、2.1系や2.2系をこれから新規構築のベースに選ぶのはあまりおすすめできません。
2.1系は2019年6月でメンテナンスが終了する予定で、2.2系も2019年12月で終了予定です。
どちらも2019年中にメンテナンスが終わってしまうため、現時点でサイトを構築中でないならば、選ぶのは避けたほうが良いでしょう。
もちろん2.3系に移行する前提で2.2系をベースに開発するのは日本語化関連の都合で次善の選択だと思います。

選ぶべきは2.3系

そういうわけで、2020年を見据えて選ぶとすれば、弊社はMagento2.3系をおすすめします。
Magento2系の間でもアップデートの際には相応の手間がかかるため、できるだけ新規構築の場合は新しいバージョンを選ばれることをおすすめします。

特に最近はPHP側のメンテナンス期限も短くなっているため、MagentoとPHPのメンテナンス期限を考慮してバージョン選びをされることを強くおすすめします。