まめー35歳で会社を辞めて独立したまめのブログWordPressホームWordPressサーバーWebサービスお問い合わせメニューホームWordPressサーバーWebサービスお問い合わせホーム>WordPress>WordPressを多言語化する無料プラグイン「mqTranslate」の使い方WordPressを多言語化する無料プラグイン「mqTranslate」の使い方TwitterLINEはてブFacebook仕事でWordPressを使った多言語サイトを作る案件がありました。まとめqTranslateとmqTranslate多言語化の有名プラグインとして「qTranslate」がありますが、今回、紹介するのは「mqTranslate」です。似た名前ですが、頭文字のmがついています。どちらも機能としてはほぼ同じですが、「qTranslate」は、対応バージョンが3.8.1以上となっていて、半年以上更新が止まっています。対して「mqTranslate」は対応バージョン3.9以上で最新のWordPressに対応しています。バグや脆弱性への対応を考えると最新バージョンに対応している「mqTranslate」がよさそうです。使い方はほぼ同じですので、これまで「qTranslate」を使っていたユーザーは「mqTranslate」への乗り換えも容易です。参考:WordPress多言語化プラグインmqTranslatemqTranslateの設定プラグインのインストール管理画面→プラグイン→新規追加→mqTranslateを検索→インストール→有効化します。有効化すると管理画面のテキストが英語になるので、日本語化します。Setting(設定)→LanguageでmqTranslateの設定画面に入ります。デフォルトで、Deutsch、English、中文になっているので、日本語のAction→Enableをクリックして日本語を追加します。この時に、必要のない言語は、各言語のAction→Disableをクリックして無効化、必要な言語は、日本語と同様に追加しましょう。ラジオボタンで選択した言語がデフォルトとなります。一覧に使いたい言語がない場合は、左メニューより追加することができます。少々手間がかかるので、流れを説明します。Languageより言語化したいWordPressをダウンロードします。2.ダウンロードしたWordPressのwp-content→languagesより「.mo」「.po」ファイルすべてを、使用するWordPressのwp-content→languages内にコピーします。Languageをクリックすると言語が追加されます。以下ロシア語の場合です。Avalable参考:ロシア語のマルチランゲージ対応方法スポンサードリンクmqTranslateの使い方(基本編)多言語化するために、必要最低限の使い方をみていきます。今回は、日本語と英語を例にします。実際に投稿画面で言語を入力します。日本語に加え、英語(English)を入力するボックスが増えました。このように、管理画面で多言語入力しておいて、サイト上で好みの言語に切り替えられる仕様になっています。同様に、本文にも日本語と英語(English)を入力するボックスが、タブ切り替えで実装されています。投稿同様に、カテゴリー、タグも日本語と英語を入力するボックスができています。言語の切り替えメニューを表示させるユーザーが、言語の切り替えをするメニューをサイトに表示させます。Chooserを表示させたいところにドラッグ&ドロップします。?>を表示させたいテンプレートファイル(single.phpやsidebar.phpなど)に記述します。dropdown(ドロップダウン)で、表示スタイルを変更できます。mqTranslateの使い方(応用編)基本編から一歩踏み込んで細かな使い方をみていきます。Settingsで、URLを3つの方法で設定できます。Modeは、パーマリンク設定がデフォルトではうまく適用されません。デフォルト以外を設定してください。Modeは、他にドメインの取得・設定が必要になるようです。(1)か(2)が扱いやすそうですね。僕は(2)で設定しました。テンプレートで言語の入力をする例えば、サイドナビゲーションに「このサイトについて」のように部分的なテキストを言語切り替えできます。以下のようにテンプレートファイルにPHPを記述します。displayed.<!--:--><!--:ja-->日本語が表示されます。?>ウィジットで言語の入力をする管理画面のボックスで入力する場合、上記のようなPHPが使えません。そんな時は、以下のように記述します。displayed.[:ja]日本語が表示されます。displayed.[:ja]日本語が表示されます。Template」を使っている場合は、テンプレートファイルでカスタムフィールドを読み込む各記述のところを少し変更します。_e(post_custom("Address"))?>とします。このように、「_e」をつけないと適用されません。Template」以外にもカスタムフィールドを実装できるプラグインは多々あります。他ので検証できていませんが、上記方法で試してみてください。現在表示されている言語以外のメニューのみ表示させる言語切り替えメニューを日本語が表示されている時は英語のみを、英語が表示されている時は日本語のみを表示できます。以下のコードをfunctions.phpに記述してください。'">English</a>';}}次に表示させたいテンプレートファイルに以下を記述。}?>読み込むファイルを変更する例えば英語の時は、en.cssを適用させたいといったように、言語によって読み込むファイルを変更できます。以下のコードをテンプレートファイル(header.phpのheadタグ内など)に記述します。?>参考:Webクリエイターボックスまとめ「mqTranslate」は無料で使える便利なプラグインです。多言語サイトのプラグインとして「WPML」も有名ですがこちらは有料。Webクリエイターボックスさんによると「mqTranslate」はアクセスが集中すると表示が遅くなってしまう欠点があるそう。WordPressの多言語化プラグインをqTranslateからWPMLに変更しました規模によっては「WPML」も検討の余地がありそうですが、無料というのは大きいので、小規模サイトなら「mqTranslate」で十分ではないかと思います。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。書いてる人:まめ大阪在住。35歳で会社を退職して、サイト運営で生計を立てています。このブログでは、ブログやサイト運営で役立つノウハウを紹介しています。