私は自分のウェブサイトにグーグルウェブサイト翻訳者を含めようとしています。ブラウザの言語がページの言語と異なる場合にバーが表示されるように、自動化を使用したいと思います。自動表示モードを選択するたびに、表示されるコードは「タブ付き」用です。誰かが私が間違っていることを教えてもらえますか、または正しいコードを提供できますか?
前もって感謝します。
編集:
<div id="google_translate_element"></div>
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.FloatPosition.TOP_LEFT}, 'google_translate_element');
}
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
AutoDisplayが機能しなかった理由、つまり翻訳メニューが常に表示された理由を理解しようとしたところ、W3C国際化チェッカーが見つかりました: http://validator.w3.org/i18n-checker/
W3C国際化チェッカーは、Acceptヘッダーが返されることを警告しました:Accept-Language:en-US、en; q = 0.8
私が最初にサイトファイルに貼り付けたGoogleによって生成されたコードには、ページの言語をチェックするための1つの値しかありませんでした。しかし、私はそれを編集し、以下を参照して、配列をpageLanguageキーに渡し、現在は機能していると思います。
<div id="google_translate_element"></div>
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: ['en', 'en-us'], autoDisplay: false, multilanguagePage: true, gaTrack: true, gaId: 'UA-403844-8'}, 'google_translate_element');
}
</script>
<script type="text/javascript" src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
Google Chromeの言語設定を変更して、できる限りテストを実行しました。しかし、私はそれが機能しているとは完全には信じていません。翻訳メニューは、ブラウザでenまたはen-USが設定されていない人に表示されるはずです。アレイに任意の言語を渡して、ニーズに合わせて適切に構成できます。
誰かがこれについてフィードバックを持っているなら、私はそれをいただければ幸いです。それが役に立てば幸い。
私はここで別の例を見ました:
これにはパラメータautoDisplayがありました:false、
サイトの言語が一致しない場合に翻訳バーのみを取得するには、コンテナーを削除し、autoDisplayを使用しました:true、
別の言語の場合はバーが表示されますが、ドロップダウンはありません。
<div id="google_translate_element"></div><script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'id', includedLanguages: 'id', layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, 'google_translate_element');
}
</script><script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
翻訳者の自動機能のためのグーグルのコード検索がどのように壊れているのかおかしいですね。 Rincewindレベルで何度も繰り返してみましたWizardカスタムセットアップを行う必要がありますが、デフォルトは私のWebサイトのデザインに合わないタブ付き関数でした。
これは英語のサイト用です。バーが表示されないサイトのデフォルト言語の言語コードを変更してください。使用していない場合は、トラッキングを削除してください。
<!-- <div id="google_translate_element"></div> -->
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'en',
autoDisplay: true,
layout: google.translate.TranslateElement.InlineLayout.SIMPLE,
gaTrack: true, gaId: 'UA-xxxxxx-x'
}, 'google_translate_element');
}
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
<div id="google_translate_element"></div><script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en', autoDisplay: false}, 'google_translate_element');
}
</script><script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
ページがユーザーのページと異なる場合にのみトランスレータを表示するには、サーバー側でチェックを行い、必要な場合にのみコードを含めます。
ブラウザ言語の取得 を参照してください
URLが正しくありません。 「http:」を追加します。以下の作業例を参照してください。
<div id="google_translate_element"></div>
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en',
layout: google.translate.TranslateElement.FloatPosition.TOP_LEFT},
'google_translate_element');
}
</script>
<script type="text/javascript" src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>