Google翻訳が使えない理由:オフライン や オンライン で翻訳不可の解決法
Google 翻訳はかっちりとした、多言語サイトを構築すると納期、費用が掛かりますが、サイトの各ページがうまくGoogle翻訳されると、意味はある程度伝わるサイトになって、あまり不自由なく使用できるために、Google 翻訳を使った多言語サイトを志向する方も多いと思います。
Google 翻訳はオンラインでもオフラインでも使用できるので、それぞれで翻訳ができない、もしくは翻訳をしたページで何らかの問題が出ることがあり、その対処法等を少し検討してみます。
オンラインで翻訳に問題が出る
本章では、Webページを一気に翻訳するという観点で、議論を行い、テキストを翻訳といった観点では特に議論をしない。
またWebページも静的なHTMLで作られているページと、システムが絡むページとで、現象がちがうことがあり。
それを検証します。 基本的に静的なHTMLで作成がされているページであれば、翻訳エラーとうになったことがないので、
静的なHTMLで組まれているサイトは、ほぼ問題なく翻訳ができると思います。
問題が出るのがシステムが絡んでいる場合です。 また検証というか調査をするGoogle の機能としては以下の3つをそれぞれ
検証する必要があると思います。
1. Google 翻訳 API を使って Webページを翻訳する
この方法は、2023年5月にGoogleの方針変更があって、サポートされなくなりました。 したがってプログラムで組み込んで
サイトページを翻訳することは、サポートされないので、プログラムでダイナミックに翻訳をするならば、他の業者の翻訳ツールを検討することになります。
2.Google 翻訳https://translate.google.com のページのサイトの翻訳機能を使用する。
これは、出力されているページは結果的に翻訳がされるのですが、ベースのページは https://tranlate.google.com にパラメーターとして翻訳ページURLを渡しているので、SEO的、PV等のデータ分析的には tranlate.google.com のページとしてアクセス分析はできますが、翻訳したいページ sample.com といった、自分のドメインのページ分析ができません。
従い、これはこれで状況により問題になりますね! 例えばブログでPVを大きく稼ぎたいからアクセス分析をしてみようと思っても、自分のサイト https://sample.com では分析ができませんからね。ブロガー、アフィリエイター、コラムニスト等ページアクセスを増やしたくて、日ごろTOOLで分析している方は、全く情報が入らないので、ダメですね。
またこのGoogle Tranlate ページでシステム機能が絡むページを翻訳しようとすると、エラーになり翻訳がされなくなったり、表面上翻訳がなされてはいるのですが、システム機能 フォームや チェックボックスが機能しなくなってしまうことが、結構あります。 これはなぜ起きるかというと、 、翻訳の過程でHTML要素やJavaScriptが意図せず変更されるためです。
解決へのヒント
Chrome のブラウザー翻訳を使う
この場合は、マウスの右クリックでメニュが出てきたら、翻訳を選択して、選択言語に翻訳ができます。
システム機能が絡むページも確認ができているので、下記にある Tranlate.google.com とちょっとロジックが異なるのかもしれないですね。 ただ多くのシステム機能が絡むページをチェックしたわけではないので、翻訳に問題のある現象が出ることもあるかと! 制作会社としては、事前に入念なチェックが必要かなと思います。
ブラウザの開発者ツールでエラーを確認する
ブラウザの開発者ツールを使用して、翻訳後にスクリプトエラーや要素が正しく読み込まれていないかを確認します。その場合、手動でコードの修正が必要になる場合があります。
別の翻訳ツールを使用する
Google翻訳の代わりに他の翻訳ツール(例:DeepL翻訳など)を試してみると、システム機能が正常に動作することがあります。
####原因と対処法 ###
原因:スクリプト干渉
Google翻訳が翻訳を表示するために新たなHTMLやJavaScriptをページに追加することで、元のインタラクティブ機能に影響を及ぼすことがあります。このため、翻訳後にチェックボックスなどの動作が不安定になります。
対策1:Chromeブラウザの内蔵翻訳機能の利用
可能であれば、Chromeの「ページを翻訳」機能(右クリックして「[言語]に翻訳」を選択)を使うと、サイトのインタラクティブ機能とより互換性が高くなることがあります[2]。
対策2:インタラクティブな要素の翻訳回避
特定の要素を翻訳対象外にするために、HTMLの要素にnotranslateクラスを追加することで、Google翻訳による干渉を防げます。
代替策:マルチランゲージサイトの導入
インタラクティブな機能が多いサイトの場合、翻訳プラグインや別言語バージョンを用意することで、インターフェースと機能の両方を保持できます。
ちょっとした迂回作戦 による解決方法
そもそもシステムが入っている場合に、Googleの翻訳のシステムがjavascript や HTML を書き換えてしまうことで、プログラム機能に影響しているので、その部分を翻訳しないで元の機能を保持させるということで、対応ができることがあるので、その方法を記載してみます。
たしかに、 google Tranlate のページのページ翻訳は、ページのテキスト翻訳は見事に翻訳します。
しかし、システムに影響が出ることが多いようです。 翻訳はされているので、そのページで何が記載されているかは
多言語で理解ができますが。。。 そのまま使用しようとすると、システムのエラーになり、使えない。それでは、システムに絡む部分を翻訳から切り離すことで、機能はいかせると判断。
Google 翻訳の自動翻訳を特定の部分に適用させないようにするためには、notranslateクラスを使用してCSSやHTMLで簡単に指定することができます。以下に、チェックボックスや他の要素に対してGoogle翻訳を無効化する方法を詳しく説明します。
ステップ 1: notranslate クラスの追加
翻訳を避けたいHTML要素に対して、notranslate クラスを追加します。例えば、チェックボックスのラベルや他のシステム部分にこのクラスを指定することで、Google 翻訳がその部分を翻訳しないように指示できます。
html
コードをコピーする
チェックボックスのテキスト
ステップ 2: 必要に応じたCSSの設定
もしCSSファイルで特別なスタイルを当てたい場合は、notranslate クラスをCSSに追加しますが、これは見た目に影響を与えるものではありません。翻訳対象外とするためにはHTMLのクラス指定だけで十分です。
css
コードをコピーする
.notranslate {
/* 必要であれば追加のスタイル */
}
ステップ 3: 特定の属性に対して翻訳無効を設定する場合
チェックボックスや他のシステム要素のvalueやplaceholder属性など特定の属性が翻訳されないようにしたい場合は、これらもnotranslateクラスが入った要素内に記述します。
例えば、次のように設定することで、Google 翻訳はチェックボックス全体のテキストや関連する要素を翻訳しなくなります。
html
コードをコピーする
選択項目
以上の手順で、CSSやHTMLのみで簡単にGoogle翻訳の影響を避けられます。
Google Chromeブラウザー のページ翻訳
これは皆さんも日常的にお使いになっている機能かと思います。 ページを出力してそれを右クリックして、翻訳を選択し言語を選択すれば、Google Chrome の機能として翻訳をしてくれます。
これは先に述べた Google の Tranlate ページ のサイト翻訳の機能と違って、私の検証した限りシステム機能が入っていてもうまく翻訳がなされます。 ただページ出力したときに明示的に、多言語のメニュ等を出せないので、そのあたりちょっと課題かなと思います。 システム機能が絡むページが翻訳されないことも可能性としてはあるので、制作会社としては
事前のチェックは欠かせないですね。
オフラインで翻訳に問題が出る
1.言語データのダウンロードが未完了
オフライン翻訳を行うためには、翻訳元と翻訳先の両方の言語データがダウンロードされている必要があります。Wi-Fi接続中にダウンロードしているか確認しましょう。オフラインなので翻訳に必要なデータベースを、From側も TO側も事前にダウンロードしておくことが必要ですね。片側だけしたダウンロードしていないと、エラーになります。OFFLINEつまりネットがないので、自分のスマホやPCのローカルフォルダーに必要な情報が存在している! これが大事ですね。
2.アプリの設定不備
アプリ内の「オフライン翻訳」がオンになっていない場合、オフラインでの翻訳ができません。アプリの設定を確認し、「オフラインで翻訳する」設定が有効になっているか確認してください[3]。
3.アプリやデータの更新不足
古いバージョンのアプリや、正しくインストールされていないデータが原因で翻訳が機能しないことがあります。Google翻訳アプリを最新バージョンにアップデートし、必要であれば言語データを再ダウンロードしましょう[4]。
4.デバイスのストレージ不足
言語データをダウンロードする際、デバイスに十分な空き容量が必要です。ストレージ容量を確認し、不要なファイルを削除して空きスペースを確保しましょう。