很多年前我們就在自建的網站中嵌入了Google Translate代碼來實現翻譯功能,但2011年的時候因為GFW的緣故,隻好暫停了,當時記錄了博客《為了速度去掉Google Translate工具代碼》。
2月份來美國聖地亞哥前在北京參加了think with Google的活動,會上講到互聯網出海的時候,特别又提到Google Translate工具,這些年來谷歌翻譯的準确率應該得到了很大提高,特别是人工智能的發展帶來翻譯質量的提升。
所以我們又想把這個工具用起來,雖然我們自己在多個系列網站上都有自己的翻譯,但還是可以把Google Translate也放在網站上,讓用戶多一些可用的翻譯功能。
在這裡找到添加Google網站翻譯的工具:https://translate.google.com/manager/website/
分三步來進行:
1、輸入網站名稱和源語言:
不過從最後獲得的代碼來看,網站網址并沒有什麼用,不在嵌入的翻譯工具代碼中;
而源語言是有用的,有代碼例如英文是en,簡體中文是zh-CN,如果網站本身有多語言版本,可以在不同的語言版本頁面中嵌入對應的語言代碼以便翻譯準确;
2、選擇譯文語言、顯示格式和高級選項:
譯文語言一般就用默認的“所有語言”,除非你隻想限定翻譯指定的幾種語言;
顯示格式可以用内嵌,以及垂直,以便讓用戶自己來選擇,并且在手機上可以方便選擇各種語言(使用下拉菜單方式的話,在PC上可以顯示所有語言,但在手機上可能因為屏幕寬度無法顯示所有語言);
高級選項裡面,默認的“用戶所用語言不同于您網頁的語言時,自動顯示翻譯橫幅。”我建議去掉,免得總是在頂部顯示翻譯欄,而把開啟翻譯的選擇權交給用戶;
3、獲取代碼:
把屏幕上的代碼複制出來,粘貼到網站源代碼中就可以了。
示例代碼如下:
<div id="google_translate_element"></div><script type="text/javascript"> function googleTranslateElementInit() { new google.translate.TranslateElement({pageLanguage: 'zh-CN'}, '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: 'zh-CN', autoDisplay: false}, 'google_translate_element'); } </script><script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
也就是多了“, autoDisplay: false”。
在Drupal 7中,可以把這段代碼放置在page.tpl.php的sidebar_first裡面,讓所有的頁面都包含,也可以作為一個Block來添加;
至于國内不能訪問拖慢網頁打開速度的問題,可以安裝一個判斷用戶是否來自國内的Drupal模塊,對于國内用戶就不顯示這個翻譯元件,隻針對國外用戶顯示。一個Drupal站裡面完整的Block例子代碼如下:
<?php global $language; $language_code = $language->language; switch ($language_code) { case 'zh-hans': $translate_code = 'zh-CN'; break; case 'zh-hant': $translate_code = 'zh-TW'; break; default: $translate_code = $language_code; } $code = '<div id="google_translate_element"></div><script type="text/javascript">'; $code .= " function googleTranslateElementInit() { new google.translate.TranslateElement({pageLanguage: '$translate_code', autoDisplay: false}, 'google_translate_element'); } "; $code .= '</script><script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>'; if (in_china()) { $output = ''; } else { $output = $code; } print $output; ?>
希望這個谷歌翻譯功能對其它語言的網站訪問用戶有些作用。
目前可以互譯的語言有:
- 阿爾巴尼亞文
- 阿拉伯文
- 阿姆哈拉文
- 阿塞拜疆文
- 愛爾蘭文
- 愛沙尼亞文
- 巴斯克文
- 白俄羅斯文
- 保加利亞文
- 冰島文
- 波蘭文
- 波斯尼亞文
- 波斯文
- 丹麥文
- 德文
- 俄文
- 法文
- 菲律賓文
- 芬蘭文
- 高棉文
- 格魯吉亞文
- 古吉拉特文
- 哈薩克文
- 海地文
- 韓文
- 豪薩文
- 荷蘭文
- 赫蒙文
- 吉爾吉斯文
- 加利西亞文
- 加泰羅尼亞文
- 捷克文
- 卡納達文
- 科薩文
- 科西嘉文
- 克羅地亞文
- 庫爾德文
- 拉丁文
- 拉脫維亞文
- 老撾文
- 立陶宛文
- 盧森堡文
- 羅馬尼亞文
- 馬爾加什文
- 馬耳他文
- 馬拉地文
- 馬拉雅拉姆文
- 馬來文
- 馬其頓文
- 毛利文
- 蒙古文
- 孟加拉文
- 緬甸文
- 南非荷蘭文
- 尼泊爾文
- 尼揚紮文
- 挪威文
- 旁遮普文
- 葡萄牙文
- 普什圖文
- 日文
- 瑞典文
- 薩摩亞文
- 塞爾維亞文
- 僧伽羅文
- 紹納文
- 世界文
- 斯洛伐克文
- 斯洛文尼亞文
- 斯瓦希裡文
- 蘇格蘭蓋爾文
- 宿務文
- 索馬裡文
- 塔吉克文
- 泰盧固文
- 泰米爾文
- 泰文
- 土耳其文
- 威爾士文
- 烏爾都文
- 烏克蘭文
- 烏茲别克文
- 希伯來文
- 希臘文
- 西班牙文
- 西弗裡西亞文
- 夏威夷文
- 信德文
- 匈牙利文
- 巽他文
- 亞美尼亞文
- 伊布文
- 依地文
- 意大利文
- 印地文
- 印度尼西亞文
- 英文
- 約魯巴文
- 越南文
- 爪哇文
- 中文
- 中文(繁體)
- 祖魯文
评论1
這個現在用不了了,好多錯誤
這個現在用不了了,好多錯誤