はじめに
グローバル化が進む昨今、国内に向けてだけでなく海外に向けて情報を発信したいというニーズも増えています。
今回はWordpressを使用して、多言語サイトを構築する手順を紹介します。
ただ一言で多言語化といっても様々な方法があり、目的や予算などによって適切な方法を選択する必要がありますが、代表的な方法に次の3つがあります。
①プラグインを使う
多言語化用のプラグインとしては有料のWPML、無料のものではPOLYLANG、BOGOなどが有名です。
②言語別に別サーバーで運用する
各国のホスティングに言語ごとに別々のWordpressを設置するという方法です。表示速度の向上が見込めたり、サイトごとに別々のプラグイン、カスタマイズが行えたりなどメリットも多いですが、やはりコストがかかるのと管理が大変というデメリットがあります。
③マルチサイト
WordPressのマルチサイト機能を使用する方法です。
マルチサイトに加えてMultisite Language Switcher、Multilingualpressなどで記事同士のヒモ付けが行われる事が多いです。
今回はマルチサイト機能を使用し、Multisite Language Switcherを使って記事同士を関連づける方法で運用してみます。
マルチサイト+Multisite Language Switcherを使った多言語化
ではここからは実際にマルチサイト+Multisite Language Switcherを使った多言語化の手順を簡単に紹介したいと思います。なお今回は既存のサイトではなく、1からサイトを構築するという前提で行っていきます。
そもそもマルチサイト機能とは?
1つのサーバー、1つのWordpressで複数のサイトを管理できる機能です。
運用には site1.example.com 、 site2.example.com ・・・というようにサブドメインを使って運用するサブドメイン型と、example.com/site1/ 、 example.com/site2/ ・・・というようにディレクトリで分けて運用するサブディレクトリ型があります。
今回はサブディレクトリ型で構築していきます。
1.Wordpressをインストール
まずはWordpressをインストールして管理画面にアクセスできる状態にします。
2.マルチサイト機能を有効にする
続いてマルチサイトの機能を有効にする為に wp-config.php 内の /* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */ より前に下記を記述します。(英語の場合は /* That’s all, stop editing! Happy blogging. */)
define('WP_ALLOW_MULTISITE', true);
※念のため「wp-config.php」のバックアップを取っておきましょう
3.ネットワークの設置
管理画面をリロードして、ツールを選ぶとサイトネットワークの設定が追加されているのでクリックします。
4.Wordpressサイトのネットワークの作成
項目を入力してインストールをクリックします。
5.ネットワークの有効化中
画面の指示通りにファイルを編集します。
※ .httaccess ファイルがない場合は作成してその中に書き込みます。
ファイルの編集が完了したら、右下のログインを押すとログイン画面に飛ぶので、再度ログインします。
左上が管理サイトに変わっていれば無事マルチサイト機能が使えるようになりました。
6.サイトを追加する
続いてサイトを新たに追加してみましょう。
参加サイト > ネットワーク管理者 > サイト と選択。
表示された画面で新規追加をクリック。項目を入力します。
試しに英語用サイトを作ってみます。
これで参加サイトから追加したサイトを選び管理画面にアクセスできれば、無事サイトが追加できました。
ちなみにサイトのテーマの管理やプラグインのインストールはこの 参加サイト > ネットワーク管理者 の管理画面から行い、個々の値はサイトごとの管理画面から入力していく事になります。
7.Multisite Language Switcherのインストール
続いてネットワーク管理者管理画面からマルチサイトMultisite Language Switcherをインストールします。
配布サイトから、Multisite Language Switcherのデータをダウンロードしてサーバのpluginフォルダにアップロードし、管理画面で有効化します。
有効化まで完了すると設定に マルチサイト言語スイッチャー が表示されるようになります。
サイトごとにこの項目の値を変更する事でサイトの言語が指定できます。
言語の指定まで完了すると、それぞれのサイトの記事投稿画面で右上で記事のヒモ付けができるようなります。
po/moファイルでテンプレートを翻訳する
ここまで紹介してきた方法でだいたい多言語化はできますが、例えばテンプレートに共通の文言を書きたいなどという事もあると思います。
そのような場合はテーマに
などと記述しておき、Poeditなどを使って既存の翻訳ファイルを書き換える事で対応できます。