【WordPress】プラグインを使わずに多言語化する

2019年6月12日WordPress,WordPressカスタマイズ

WordPressの多言語化には様々な方法があると思いますが、今回選んだのはWordpress内の別言語用ディレクトリにもうひとつWordpressを入れる方法です

URL構造は日本語が今まで通り「https://naruhodo.repop.jp/」

英語用に「en」ディレクトリを作り、Wordpressをもうひとつ入れました

Wordpressの言語設定だけで簡単

テンプレートや設定はエクスポート・インポートでコピーしていますがWordpressの「設定」ー「一般設定」で「サイトの言語」を「English」にする事でヘッダーなどの言語設定も英語になります

多言語化プラグインでもなく多言語用カテゴリでもなくマルチ化でもなく新たにWordpressを入れる方法を選んだのは、設定が簡単だと思い、各phpで判別して言語設定していかなくても、英語用のWordpressとして分ける事で手間が省けるかなと

html langの言語設定

「サイトの言語」を変更するとWordpressの管理画面も英語になっちゃいますけど、今の所は見分けついて良いかなという感じ

この時点でhtml langは「en」に切り替わっています

あとはソースに残るCSSやウィジェットで日本語が残っていないかチェックするだけでした

デメリットは2つのWordpressをいれてる分、サーバーの容量を圧迫させることと、記事同士のリンクは自前で実装する必要があることですね

記事間のリンクを時前で用意する

英語記事のある場合に日本語記事との切り替えリンクなどは、自分で設計しないといけませんが記事のパーマリンクさえ合わせれば実装はできそうです

日本語記事に英語記事があるなしでの変数を持たせるか(カスタムフィールドで良いのかな)、データベースで他言語の記事の存在を確認させるかは悩み中です

link rel="alternate"での言語別ページの指定

<link rel="alternate" href="URL" hreflang="en" />
<link rel="alternate" href="URL" hreflang="ja" />

こちらもページリンクと一緒にHTMLに埋めれる様にしておきたいですね

sitemap.xmlはどうするか

言語設定で英語にすれば「XML Sitemap」で出力されるサイトマップそのままで良いと思いますが「Search Console」への登録は別サイトにするべきかどうかです

どちらかから試して問題ないかチェックしなくてはです

翻訳をどうするか

ここまできて一番の問題は英語の文章など全く書けない事ですね

翻訳ツールに頼る気満々でしたが、記事内容によっては自動翻訳してからかなりの修正が必要になるということ

なかなかに難しいですねー

2019年6月12日WordPress,WordPressカスタマイズ

Posted by Yousuke.U