WordPress、Joomla、Drupalでの多言語化を考える(2023年4月)

4月 24, 2023

≪≪この記事をすべて読むには約 15 分かかります≫≫

当サイトはWordPressで運営しています。WordPressのようなサイト作成ツールはCMS(コンテンツマネジメントシステム Contents Management System)と呼ばれており、他にメジャーなものだとJoomla、Drupalがあり3大CMSと呼ばれていたこともあります。他にも、Concrete CMSや国産ツールなどがありますが、Wordpressが圧倒的なシェアを誇っています。

シェアが高いだけの理由はありますが、他のCMSにも良い点があるため多くのサイトで使われています。多言語サイトを作るという点で比較してみます。2010年代中盤に私が多言語サイトに挑戦した際、検討した結果「Joomla」で作りましたが、今だったら「Drupal」の方が(使えるなら!)良いと思います。

WordPress、Joomla、Drupalとは?

WordPress、Joomla、Drupalは、いずれもPHPで書かれたオープンソースのCMS(コンテンツ管理システム)で、幅広い拡張性があります。

WordPress

世界シェア、日本シェアともにダントツで高いCMSで、ブログ運営にとても使いやすいため、広く使われています。一方で、複雑なサイト構造には対応しづらいです。

Joomla、Drupal

少なくとも2010年台から、CMSの世界シェアでJoomlaが2位、Drupalが3位でキープされてきたのですが、2022年にいずれも機能特化CMSのShopifyやWixに抜かされたようです。

日本国内でのシェアは、Drupalが6位、Joomlaは圏外です。

Joomla、Drupalともにブログにも使えるけれど、複雑なデータ構造を扱えて複雑なウェブサイト運用ができるツールです。JoomlaよりもDrupalの方がより高機能で複雑なので、以前Drupalには挫折しました。

多言語対応とは?

多言語対応は、ウェブサイトを複数の言語で表示することを可能にする機能です。多言語対応すると、日本国内のユーザーからだけではなく世界中から閲覧してもらえる可能性が増えます。

一般的には、サイトに接続するとブラウザの言語設定に応じて対応するページに飛ぶようになっています。企業サイトなどでは、言語を選べる場合もありますが、国ごとに違うビジネスをしている会社などだと、言語というか接続元の国によって飛ばされて他の国のサイトを見られないようになっている場合もあります。

多言語対応に必要な機能

多言語対応する場合、閲覧者が使っている言語設定に応じて異なるページに遷移させる設定が必要になります。多言語対応と言っても、世界中のすべての言語に対応するのはほぼ不可能なので、指定した言語の使用者以外はデフォルト言語のページに飛ばすことになります。

次に、多くの場合は表示言語の切り替え機能が表示されています。よく、画面の上や下に地球儀マークや国旗マークが表示されていて、クリックすると別言語になるボタンです。

最後に、時々、表示されているページ内容を機械翻訳するツールがついている場合があります。最近のブラウザは機械翻訳をするメニューがあるので、わざわざついていない場合が多いかもしれません。

CMSの多言語機能

WordPressは、基本的に1言語しか対応できません。プラグインを導入することで対応可能になりますが、Joomla、Drupalが最初から多言語対応可能になっているのと比べると貧弱です。

多言語対応に必要な作業

多言語対応サイトを作るためには、サイトの構造を多言語対応できるようにするだけでは足りません。見てもらう文章・画像などの内容も多言語対応にする必要がありますし、むしろそちらのほうが大変です。

画像に文字を入れることを避ければ、画像は同じままで多言語対応にできますが、画像内に文字が入っている場合、あきらめて1言語のみとするか、画像の差し替え設定が必要になるので手間がかかります。

文章の翻訳

サイトの文章を多言語対応にする方法は、大きく2種類あります。一つは、ひたすら手作業で執筆し、場合によっては人に翻訳を依頼することです。もう一つは、機械翻訳に頼ることです。

よほど大切なページでなければ、手作業で全部こなすのはかなりの手間と費用を要します。2010年中盤に多言語対応を試みたころは、機械翻訳も何種類かのツールを使い分けていました。

2010年台中盤までの翻訳手段

機械翻訳として、

  1. Google翻訳
  2. Bing Microsoft翻訳
  3. Excite翻訳
  4. Yandex翻訳

などが利用できました。また、GrammarlyやGingerなどの補助ツールを使いながら、機械翻訳でおかしなところを手作業で補正して何となく使ったり、場合によっては機械翻訳そのままで怪しい外国語になっていました。

英語はともかく、自分がわからない言語は機械翻訳一択なので、多言語といっても2言語になってしまっていました。

2023年の翻訳手段

現在、状況は一変していると思います。

  1. DeepL翻訳
  2. ChatGPT、BingChatなどの汎用AIツール
  3. NotionAIその他の文書作成ツール
  4. Google翻訳・Bing翻訳

高精度な翻訳ツールが台頭し、ChatGPTを始めとする汎用AIツールでもかなり翻訳できるようになってきています。これからも高度化していくと思います。

DeepL翻訳は、少なくとも翻訳向けの日本語を書けば、外国語に翻訳した際に私レベルでは違和感を感じないレベルになっています。有名な夏目漱石の「月が綺麗ですね」⇔「I love you.」のような超訳を求めなければ、少し手直ししてもう一度DeepLなりChatGPTで英文校正すれば、厳密な翻訳が必要になる、センシティブな領域を除けば満足いく出来上がりになりそうです。

WordPressサイトの多言語化

サイト構造の多言語化

WordPressでの多言語化はかなり大変そうです。私はやろうとは思えません。PolyLangもしくは、有料のWPMLを導入するようです。

多言語化プラグインを入れて設定すると、サブディレクトリ構造のサイト構造で多言語化ができます。投稿の多言語構造化はそれほど難しくなさそうですが、投稿リストから言語での絞り込みができないように見えます。

他のページを見ると、サブドメイン型でも作成できるようです。

マルチドメインは・・・リライトとかすれば、できる、かもしれませんが・・・。

サイトの翻訳

文章の翻訳をDeepL翻訳を使って行うためのプラグイン

そのままな名前のプラグインがあります。ただ挙動がちょっと怪しく、標準エディタでそのまま使うわけにはいかなくて大変なようです。

DeepLの無料版でも何とかなると上記記事には書かれていますが、無料版で使う場合はプラグインを使って翻訳する機能を使わずに3000文字までのウェブツールを使って翻訳して張り付ける、ということなので、ちょっと趣旨が違います。

Joomlaサイトの多言語化

Joomlaはインストール直後から多言語に対応可能になっています。

サイト構造の多言語化

システムメニューの「管理」から「言語」のインストールを行い、「コンテンツ言語」に追加します。

「英語」でも色々あって多数追加できますが、デフォルトが「en-GB」になっていて面倒なので、イギリス向けのサイトでなければ、これをオーバーライドして「en-US」にして国旗マークをアメリカに変えて使っています。

さらに、「システム」→「プラグイン」で「システム-言語フィルタ」を有効にすると多言語対応可能になりますが、フロントエンドでユーザーに自分で変更を許可するには、「コンテンツ」→「サイトモジュール」で「言語スイッチャー」を表示されるようにする必要があります。

サイトの翻訳

コンテンツの編集画面で、言語を設定することができます。「すべての言語」にするとどの言語でも表示されるページになります。追加プラグインを入れない場合は、コンテンツの編集画面から「関連付け」で翻訳記事を選択する必要があります。

メニューやタグなども多言語化すれば表示されますし、多言語しなかったメニューなどは(例えば、日本語ぺージに英語ページへ飛ぶ、というメニューをつけた場合)表示されません。

翻訳を管理する、JA Multiiingualや、FaLangなどの拡張機能があり、使えば翻訳したページとしていないページの管理が簡単になります。

機械翻訳

ただ、JA Multilingual、FaLangだとBing翻訳、Google翻訳、Yandex翻訳に対応していますが、DeepL翻訳には対応していません。

DeepL対応の拡張機能は、Joomla/Wordpress対応の「Automatic Translation with DeepL」と、不動産販売サイト作成用キット「Jomres」の付属ツールしか検索で引っ掛かりません。

Automatic Translation with DeepL

翻訳ツールで、多分DeepLのAPIキーは不要だと思います。そうでないと強気すぎる価格設定です。

  • 年間150ユーロで、1ドメイン50万文字
  • 年間300ユーロで、1ドメイン100万文字・手動で書き換え可
  • 年間600ユーロで、1ドメイン200万文字・手動で書き換え可

「Manual adjustments possible」(手動で書き換え可?)と書かれている部分がよくわかりませんが、サイト上にはイメージ画像しかなく、実際どうなっているのかわかりません。ひょっとしたら機械翻訳させた後、記事を触れないもしくは触るのが非常に大変か、かもしれません。DeepLのAPIキーはたぶん必要ないので、50万文字までのプランであればDeepLの有料プランに入るのとそれほど変わりありませんが、1ドメインまでで、プラグインに翻訳文を管理される(かもしれない)のがちょっと好みではありません。

Jomres

Jomresは追加機能として翻訳がついているだけなので、いらない機能がたくさん入ってしまいます。有料ツールで、月額29ユーロ、半年149ユーロ、一年288ユーロで自動更新、買い切り1052ユーロのサブスクリプションサービスになっています。

サブスクリプションが切れてもダウンロードできなくなるだけで使えるようですが、「使えるけど、私が飢えちゃうのでよろしくね!」と書いてあるので、お試しで使うか、買い切りが良いかな・・・。

ただし、DeepLのAPIキーは別途必要ですので、トータルコスト的にはAutomatic Tranlationより高額になります。

Drupalサイトの多言語化

Drupalは以前挫折して、まだ試せていないですが、少なくとも現時点ではJoomlaよりも多言語対応が簡単に、かつコスパよくできそうです。多言語サイトを作るために、使えるようになるかわかりませんがDrupalを今から勉強しようと思っています。

サイト構造の多言語化

Joomlaと同じく多言語機能をオンにして、翻訳をするだけになります。

コンテンツの翻訳

DeepL翻訳を使ってコンテンツの翻訳をするのには、「Translation Management Tool」(TMGMT)とTMGMTのプラグイン「TMGMT DeepL Integration」があります。(他にはないかもしれません)

いずれも、オープンソースで無料のツールです。サイト運営に費用をかけられない私にはこれがベストと思います。何となく挫折したころと違ってサイト運営にも慣れたことだし、Drupal自体も見た目がわかりやすそうになった気がするので、挑戦してみようと思います。

DeepL翻訳のAPIキーは必要なので、年間12000円にはなりますが、Automatic Translationと違って他のサイトや他の目的にも使えるものなので良いですね。

Drupal <= Joomla < WordPressで多言語サイトフレンドリー

コア機能との連携が取れる状態で開発されたオープンソースプロジェクトを使ってDeepL翻訳できるDrupalが最も良さそうです。Joomlaでも多言語化までは簡単に実行可能ですが、コンテンツの管理を考えるとブラックボックスな拡張機能を入れる必要があります。

WordPressは多言語化サイトをうまく運用するのは難しそうです。ここまでの機能を全く使わずに、マルチドメインで2サイト作って同時更新、相互リンク(スラグを同じにして自動で)の力業が多分一番手軽で問題が起こらない多言語化だと思います。

Drupalに挑戦してみて、ひょっとしたらJoomlaに戻るかWordPress力業、で済ませている、かもしれません。