*Magento2の日本語化についてご注意(2019年5月追記)

2019年5月、最新のMagento2.3バージョン以降に対応した、新しい日本語エクステンションがリリースされました。
新しい日本語エクステンションも、Composerでのインストールが可能で、この記事の動画にてご案内している作業と同じようにインストールすることができます。

2.2系以前の日本語ロケール/日本語ローカライズ
php composer.phar require veriteworks/m2-japaneselocale
php composer.phar require magento-japan/m2-jplocalize:dev-master

2.3系以降の新しい日本語エクステンション
php composer.phar require community-engineering/japan-common

Magento2.3.xを日本語化するには、2.2系以前の二つのコマンドの代わりに、2.3系以降の新しいエクステンションをインストールするコマンドを実行してください。

詳細は、Magento2.3に日本語エクステンションをインストールするの記事をご参照ください。

1.Magento言語ロケールについて

Magentoは、言語ロケール/言語パッケージという一種のエクステンションをインストールすることで、多言語化することができます。適用できる言語は、Magentoルートで、bin/magento info:language:list  のコマンドを入力するとリストアップされます。

Magento2言語ロケールのコードリスト

Magento2のデフォルトインストールでは、English(United States)の、en_US が基礎言語として展開されます。ここに、日本語ロケールをインストールすると、Magentoの基本機能のテキストを日本語に置き換えて表示することができます。言語コードは、原則として、ISO 639-1の言語コード二文字と、ISO 3166の国コード二文字の組み合わせで決まります。日本語ロケールのコードは、ja_JP となります。
中国語のロケールはやや特殊で、中国大陸の簡体字はzh_Hans_CN、香港の繁体字はzh_Hant_HK、台湾の繁体字はzh_Hant_TWとなっています。Magentoの言語ロケールについての説明は、Magento多言語化/翻訳のページもご参照ください。

言語ロケールは、すでにインストールされているMagentoに後から追加インストールすることもできますが、以下の動画では、Magento2の本体と日本語ロケールを、Composerを使って同時にダウンロード/インストールしています。

(先にMagento2をインストールし、後から日本語ロケールをインストールする場合、Magento2のストアを日本語化するためには、管理画面の Stores> Configuration> General> Locale Options で 「Japanese/日本語」を選択してください。)

先ず、PuTTYでSSHアクセスをして、Magentoをインストールする階層/ディレクトリ(Magentoルート)へ移動します。cd というのが、ディレクトリの移動のコマンド(change directoryの省略)で、cd public_html/dekirumonn.com/demo で、今回のMagentoルートへ移動できます。(どのディレクトリにMagentoをインストールするかは各人の任意ですので、作業環境によってコマンドのパスは変更してください。)

2. Composerのインストール

Magento2をインストールする前に、Composerをインストールします。
Composerとは何なのか、なぜMagentoをインストールするためにMagentoとは関係ない(ように見える)ものをインストールする必要があるのか、ComposerがなくてもMagentoのインストールはできるのではないか? そんな疑問にとらわれる人が多いと思います。そこで、検索をすると、「Composerとは、PHPアプリケーションのライブラリ/パッケージの依存関係を管理するツール」というような説明がたくさんヒットします。そして、余計に混乱します(笑)。日本語を読んでいるのに、さっぱり意味が分らないのです。

Composerの公式サイトを訪れると、上の日本語の意味とおおよそ同じであろう説明が英語で書かれています。Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you. やはり、これだけではよく分かりません。dependency というのがキーワードで、この語の含まんとする概念をよく理解することが、Composerの働きを知るのに重要そうだ、くらいのイメージは湧きます。
つづけて英語で検索してみると、例えば、What is a dependency or package manager?では、”dependencyとは何なのか?”とストレートに質問している人がいます。それに対して、”A dependency is another library that the one you are using requires.”という回答があります。直訳すれば、「あなたがいま使っているライブラリが必要としているもう一つ別のライブラリ、それがdependencyだ。」くらいの意味になります。質問者の理解は進み、次のように要約します。

Library – A collection of already pre-written code to make my life easier so I don’t have to write everything from scratch(ライブラリとは、すでに書かれてある定型コードの集積で、それがあれば自分で一から書く必要などなく、私の人生を楽にしてくれるもの)
Package – Collection of libraries that are built on each other or using each other one way or another(パッケージとはライブラリの集積で、そこでは複数のライブラリが様々な方法でお互いを使い、お互いに必要とされながら組み立てられている)
Dependencies – Managing how these libraries are related to each other and which ones are essential to run the code. For example library “A” is using code from library “B” so I need both if I want to use codes from library “A”. (Dependencyとは、これらのライブラリが相互にどのように関わっているのかを見極め、そして、あるコードを走らせるためにはどのライブラリが不可欠なのかを突きとめること。例えば、ライブラリAがライブラリBのコードを使っている場合、ライブラリAを使うためには、ライブラリAもライブラリBも両方とも必要となる)

この英語を読むと、dependencyの語の表現している概念がどのようなものなのか、なんとなくイメージすることができます。
技術的にきちんとした理解に至らずとも、運営者としては、いかに使いこなすかということのほうが大切なので、ここでは、Composerとは、Magento本体やMagentoエクステンションのインストールを楽にし、全体をひとつのプロジェクトとして管理してくれるもの、Composerがあればアップデートやバージョン情報も一元化できる、くらいのイメージを摑んでおけば充分だと思います。

さて、Composerをインストールするには、次のコマンドを使います。

curl -sS https://getcomposer.org/installer | php

動画の中では、

curl -sS https://getcomposer.org/installer | php71

と、最後に 71 という数字をつけています。

これは、PHP7.1バージョンを指定しています。なぜ指定しているのかと言うと、この動画での環境(SiteGround)が、デフォルトではPHP5.6バージョンだからです。しかし、cPanelのPHPバージョン管理で、特定ディレクトリを別のPHPバージョンで運用することができます。Magento2.2以降は、PHP5.6をサポートしなくなったので、今回のMagentoインストール先のディレクトリに、あらかじめPHP7.1を設定しています。そのため、Composerをインストールするコマンドにおいても、デフォルトのPHP5.6ではなく、PHP7.1の環境でのインストールですよと、明示的に指定をしています。(海外サーバーのSiteGroundについては、Magentoサーバーのページをご参照ください。)

今回の動画では、すべての phpコマンドで、php71となっています。ご自身の環境にあわせて、ここは読みかえてください。

尚、ルート権限のある環境でユーザーを作成している場合は、sudoコマンドとなります。Composerもサーバー全体にグローバルに利用することができるので、Composerをインストールした後に、mv composer.phar /usr/local/bin/composer とファイル移動をするのが一般的です。動画では、ローカルのまま使用しています。

Composerのインストール後に、php71 composer.phar と打つと、きちんとインストールされているかどうかを確認することができます。動画では一瞬で、スクロールも戻していないので見えづらいかもしれませんが、以下のような画面が表示されれば、Composerが正しく入っていることになります。

Composerインストール

3. Magento2のダウンロード

つづいて、このComposerを使って、Magento2のファイルをダウンロードします。コマンドは以下のようになります。

php71 composer.phar create-project --repository-url=https://repo.magento.com/ magento/project-community-edition

これは、Magento2のファイルの格納されているサーバー倉庫/リポジトリ(repo.magento.com)から、Magento2のCE版の最新版をダウンロードするためのコマンドです。Magento2のバージョンを指定したい時には、php71 composer.phar create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.2.2 等と、最後に=バージョン数を入れます。
また、このコマンドでダウンロードをする場合、Magento2のファイルが、project-community-edition というフォルダ内にダウンロードされます。フォルダ名を変更するには、php71 composer.phar create-project --repository-url=https://repo.magento.com/ magento/project-community-edition your-folder-name と、半角空けて最後に任意のフォルダ名(この場合はyour-folder-name)を入れ、指定することもできます。

動画では、比較的スムースにMagento2ファイルのインストール(ダウンロード)がはじまっていますが、実は、この動画を撮る前に、練習で一度同じ作業をしています。なので、その際にダウンロードしたデータがComposerのキャッシュに残っているので、キャッシュからの読み込みとなっています。はじめてMagento2ファイルをダウンロードする場合は、もしかしたら、止まってしまったのか、、?と不安になるくらいに時間がかかることが多いので、しばらく待って、画面を見守ってください。

4. Magento2ファイルの移動(cPanel FileManagerでの作業)

Magento2ファイルのダウンロードが完了したら、一度PuTTYを離れて、FTPでの作業をします。
動画では、cPanelに付属しているFileManagerを使用しています。

Magentoルートを見ると、先ほども触れたように、project-community-edition というフォルダが作成されています。その中にMagento2のすべてのファイルがダウンロードされているので、この状態だと、もともとMagento2をインストールしようとしていたディレクトリの一つ下の層にファイルが配置されているかたちになります。なので、動画では、このフォルダ内のファイルを、すべて選択&マウスドラッグで、一つ上のディレクトリへ移動しています。

もちろん、Magento2のダウンロードのコマンドでフォルダ名を指定し、そのままそこをMagentoルートとして運用することも可能です。その場合、PuTTYでの作業で、ディレクトリをひとつ下げて、次の日本語エクステンションをダウンロードするコマンドを打つことになります。なので、FTPでは、逆に、composer.phar ファイルを、一つ下層の該当フォルダ内へ移動することになります。(ルート権限があり、Composerをグローバルにインストールしている場合は、composer.pharファイルの移動は必要ありません。)

コマンド作業に慣れているかたは、FTPを使わずに、コマンドのみでファイル移動をすることもできます。

また、Magentoデモで紹介しているLumaテーマのように、Magento2のサンプル商品データも同時にインストールする場合は、php71 bin/magento sampledata:deploy のコマンドで、Magento2のインストール前に、サンプルデータもダウンロードします。
(Composerを使ってサンプルデータ入りのMagento2をインストールする場合、サーバー環境によっては、数時間~というフレームでかなり長い時間がかかりますので、作業のタイミングにご注意ください。)

はじめてMagento2の本体やサンプルデータをダウンロードする時には、Magento Marketplaceで取得をしたPublic Key(Username)とPrivate key(Password)の入力を求められます。事前にMarketplaceのアカウントを作成し、Keyを準備しておいてください。詳しくは、Magento2.3に日本語エクステンションをインストールの記事をご参照ください。

5-6. 日本語ロケール/日本語リージョンのダウンロード

この段階で、Magento2を英語のまま通常通りにインストールするなら、ブラウザでのインストール画面へと進みます。しかし、今回は、Magentoインストール前に、日本語エクステンションを事前にダウンロードすることで、はじめからデフォルト言語を日本語としてMagento2をインストールしてみます。

今回の動画でインストールしている日本語エクステンションは、Veriteworksさんの開発された日本語ロケール/リージョン(ローカライズ)です。エクステンションの詳細は、Veriteworksさんのサイトをご参照ください。https://principle-works.jp/magento2-extension/japanese-localize
Veriteworksさんのエクステンションは、Magento Marketplaceにも掲載されているのですが、最新バージョンのコードは、GitHubで公開されています。

日本語ロケールをダウンロードするコマンドは、以下のようになります。

php71 composer.phar require veriteworks/m2-japaneselocale

また、日本語リージョン(ローカライズ)をダウンロードするコマンドは、以下のようになります。

php71 composer.phar require magento-japan/m2-jplocalize:dev-master

Composerでダウンロードをする場合、一般にそのパッケージのレポジトリ(倉庫)は、Packagistになります。大抵は開発者のかたで、GitHubとPackagistを連携されているので、GitHubにあるパッケージをComposerでダウンロードするときは、基本的にPackagistから読み込みをしていることになります。

尚、後者の日本語ローカライズのコマンドのほうは、php71 composer.phar require magento-japan/m2-jplocalize と打つと、バージョン情報を入れてくださいという趣旨のエラーが出てしまうので、コマンドの最後に、:dev-master と追加し、デフォルト(バージョン指定なし)としてダウンロードしています。

この二つの日本語化エクステンションを入れると、日本語/日本円決済対応の、日本市場で利用のできるECプラットフォームのベース機能をMagento2に追加できたことになります。

また、ComposerでダウンロードしたMagento2のすべてのエクステンションは、vendor フォルダ以下に配置されます。動画で確認していなかったのですが、今回の二つの日本語エクステンションは、以下の画像のように配置されています。

Composerでインストールした日本語エクステンション

注意すべきは、この vendor ディレクトリは、Composerでのインストールをしたエクステンションのみが配置されるということです。
例えば、GitHubでエクステンションのzipファイルを自分のPCにダウンロードし、FTPでここにアップロード、解凍しても、Magento2側としては、新しいエクステンションが入ったと認識してくれません。
FTPを使い、手動で一般のエクステンションをアップロードする場合は、vendor フォルダではなく、app/code 以下に配置することになります。ちょうど、Magentoテーマのページで紹介している動画で、Ultimoテーマをアップロードしたのと同じような作業になります。そして、アップデート後に、コマンドでファイルを展開させます。

尚、言語ロケールのパッケージファイルを手動でアップロードする場合は、エクステンションとしては別枠扱いのようになり、app/code ではなく、app/i18n というフォルダへアップロードします。i18n がない場合は、自分でそのフォルダを作成します。
ちなみに、i18n というのは、internationalization の省略で、この語が長いので、iとnの間に18文字あるよ、みたいな意味合いとして慣用的に使われているようです。

7. ブラウザでMagento2をインストール

Magento2本体と、日本語ロケール/日本語リージョンのダウンロードができたら、いよいよMagento2のインストールになります。
Magento2のルート、ストアURLにブラウザでアクセスしてください。すでにストアURLを開いている場合は、ブラウザの更新ボタンを押してください。そうすると、Magento2のSetup Wizardインストール画面に自動でリダイレクトされます。

ここからは、基本的に画面の指示通りに進み、必要な項目を入力すればいいので、作業そのものは簡単です。
ただし、はじめの環境チェックでNGになり、なかなか次のステップへ進めない場合は、お使いのサーバーの設定やパーミッションを見直す必要があります。先ずはサーバー会社に問い合わせてみるのがいいと思います。

また、Nginxサーバーの場合は、Setup WizardでMagento2をインストールすることができません。エラー、とかではなく、はじめから対応していません。信じられないかもしれませんが、公式ドキュメントでもそう明記してあります。なので、Nginxの場合は、コマンドラインからのインストールになります。

動画では、SiteGroundという海外老舗サーバーを利用しています(GoGeekプラン*)。格安ですが、Magento2も一通り構築・運営できるスペックがそろっているので、極度の英語アレルギーでなければ、ぜひチャレンジされることをおすすめします。特に、海外向けの越境ECサイトとしてMagento2での構築を計画されているなら、海外サーバーは日本国内のサーバーよりも好条件になります。
(*SiteGroundのStartupプランでは、メモリ不足でComposerでのモジュールインストールができないという報告をいただきました。Composerをお使いになる場合は、上位プランをご検討いただくか、他のVPSサービス等をご利用ください。)

また、Setup WizardでMagento2のインストールをはじめる前に、cPanelのMySQL Databasesなどで、Magento2用の新しいデータベースを作成しておいてください。そして、動画のように、作成したデータベースの情報を入力してください。
今回はデモサイトなので、admin管理画面のパスやユーザー名は、単純にadminで進めていますが、実際のインストールでは、第三者に推測されにくいワードを使用してください。
HTTPSのオプションは、SSLを入れていないテスト環境などでは、チェックせずにそのままインストールを進めてください。後で、管理画面の設定から、フロントもバックエンドも、httpsに変更することができます。

最後に、管理画面内の言語について。
デフォルトを日本語にしてMagento2をインストールしても、管理画面内の言語は英語のままになっています。日本語に変更したい場合は、管理画面の右上、人のアイコンのプルダウン > Account Setting > Interface locale で「日本語/Japanese」を選択すると、管理画面内が日本語表示に切り替わります。
ただ、Magentoの構築では、なにか壁にぶつかった時、英語で検索をして問題解決の糸口に辿りつくことが多く、その際に管理画面が日本語表示だと、かえって分かりづらくなってしまうケースもあります。
個人的には、もし英語表示に抵抗がなければ、フロントが日本語ストアでも、バックエンドの管理画面は英語のままにしておくことをおすすめいたします。

補足. 言語ロケールのCSVファイル翻訳編集について

Magento2にインストールした日本語ロケールの翻訳テキストは、CSVファイルで編集することができます。
日本語CSVファイルは、画像のように、[magento2ルート]/vendor/veriteworks/m2-japaneselocale/ja_jp.csv に配置されています。このja_jp.csvファイルをダウンロードし、CSVファイルを編集できるエディターで開いてください。文字化けしてしまう場合は、文字コードをUTF-8にして、開きなおしてください。

Magento2日本語ロケールCSVファイル

ja_jp.csvファイルには、左側に、Magento2の基礎言語となっている英語(en_US)のフレーズがリストアップされており、その右側に、英語フレーズに対照するように、日本語翻訳のフレーズが入力されています。
翻訳のテキストを変更したい場合は、この日本語フレーズを編集し、CSVファイルを保存、そして元の場所にアップロード上書きをします。また、CSVファイルに行を追加し、新たに日本語翻訳の項目を追加することもできます。

変更を反映させるためには、Magento2のキャッシュをクリアし、SSHアクセスをして、日本語ロケールのファイルを再展開します。コマンドは以下のようになります。(環境によりphp71は置き換えてください。)

php71 bin/magento setup:di:compile
php71 bin/magento indexer:reindex
php71 bin/magento cache:clean
php71 bin/magento cache:flush

Magento2が、Productionモード(ライブ環境)になっている場合は、さらに以下のコマンドで展開させます。

php71 bin/magento setup:static-content:deploy ja_JP

もし上記をしても変更が反映されない場合は、ブラウザやサーバー側のキャッシュもクリアしてください。

Defaultモード/Developerモードでは、php71 bin/magento setup:static-content:deploy ja_JP で静的ファイルを展開させようとするとエラーになるので、php71 bin/magento setup:static-content:deploy ja_JP -f と、-f をつけて、強制的に日本語ファイルを展開させてみる方法もあります。

以上、Magento2を日本語化するためのComposerでのインストール動画の解説でした。

まとめ. Magento2日本語環境インストールのコマンド

Composerインストール

コピーする

Magento2ファイルダウンロード(共用サーバー)

コピーする
コピーする

Magento2ファイルダウンロード(VPS/Cloud)

コピーする
コピーする

日本語ロケールダウンロード(共用サーバー)

コピーする

日本語ロケールダウンロード(VPS/Cloud)

コピーする

日本語リージョンダウンロード(共用サーバー)

コピーする

日本語リージョンダウンロード(VPS/Cloud)

コピーする
Magento多言語化

Magento多言語化と翻訳

Magento言語ロケールで基本機能の多言語化が可能です。コンテンツの翻訳は、APIの利用でMagento2と翻訳システムを連携することもできます。

Magento多言語化と翻訳