谷歌翻译设置默认语言

tdu*_*ham 23 javascript jquery google-translate

也许这有一个明显的解决方案,我忽略了,但我似乎无法找到正确的参数来实现这一点.使用网站上的Google翻译小部件,我需要设置用户在进入网站时看到的默认语言,即使该网站是英语.

function googleTranslateElementInit() {
    new google.translate.TranslateElement({
       pageLanguage: 'en'
    }, 'google_translate_element');
}
Run Code Online (Sandbox Code Playgroud)

我试过添加: defaultLanguage: 'fr' 并试过: targetLanguage: 'fr'

我确实找到了一些不错的jQuery解决方案,但如果它是一个简单的解决方案,我不想绕过它.

Lan*_*ane 21

这不是如何使用jQuery完成任务的直接答案,但希望它有用.谷歌翻译使用名为"googtrans"的cookie来跟踪选择的语言.您可以在加载页面之前自己设置该Cookie,Google翻译也会使用它.

// PHP code sample, could be accomplished with any language that can set cookies
// set the default language translation to Portugese
setcookie('googtrans', '/en/pt');
Run Code Online (Sandbox Code Playgroud)


小智 14

添加#googtrans(xx)到查询字符串的末尾也会自动为您翻译页面,类似于自己设置cookie(其中xx是语言代码,例如fr为法语).


小智 7

你可以像这样在JS中设置cookie

function setCookie(key, value, expiry) {
  var expires = new Date();
  expires.setTime(expires.getTime() + (expiry * 24 * 60 * 60 * 1000));
  document.cookie = key + '=' + value + ';expires=' + expires.toUTCString();
}
Run Code Online (Sandbox Code Playgroud)

并通过以下方式调用。

function googleTranslateElementInit() {
    setCookie('googtrans', '/en/pt',1);
    new google.translate.TranslateElement({
       pageLanguage: 'en'
    }, 'google_translate_element');
}
Run Code Online (Sandbox Code Playgroud)


Dan*_*nny 1

看起来 jQuery / Javascript 是正确的选择,除非您的用户将其浏览器首选项设置为不同的语言。引用谷歌小组的讨论

翻译元素的工作原理是将页面上的内容(默认情况下)翻译为最终用户浏览器设置的任何语言。他们可以选择不同的语言,但无法使用该元素自动将页面翻译为所有访问者的给定语言。