我知道这个问题 有哪些选项可以实现多语言网站, ,但是那里的答案集中在后端和前端的多语言支持上。

我只关心提供网站内容的多语言查看,而不是多语言内容创建。

可以像把 Google翻译工具 我网站上的代码?我看到至少有 一个 夫妻 提供此功能的插件 - 有人对这些功能有经验吗?

有帮助吗?

解决方案

如果您只是寻找一种以其他语言查看您的网站的方法,我会挑衅地建议使用Google Translate工具。我只是将其添加到主题中:

<div id="google_translate_element"><span id="trans">Translate: </span></div>

您可以在CSS中隐藏Google徽标和时髦的颜色:

.goog-logo-link{display:none;} 

而不是调用Google Translate JS,而只是复制返回脚本并将其添加到我的主JS文件中。

编辑

Google提供的 嵌入代码 在您的网站上使用:

 <div id="google_translate_element"></div><script>
function googleTranslateElementInit() {
  new google.translate.TranslateElement({
    pageLanguage: 'en',
    layout: google.translate.TranslateElement.InlineLayout.SIMPLE
  }, 'google_translate_element');
}
</script><script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>

第一行: <div id="google_translate_element"></div> 可以放置在您想要的翻译下拉框的位置:

alt text

第一组之间的部分 <script> 标签是语言和布局选项。最后一组 <script> 标签调用更多JavaScript,在DOM加载时,Google在HTML中插入内联。为了加快此过程并避免额外的HTTP请求和Inline脚本,我删除了最后一个呼叫,然后将Google返回的代码添加到我使用的“主” JS文件中,其中包含我所有的自定义JavaScript合并到一个文件中。 Google返回的代码是:

(function(){var d=window,e=document;function f(b){var a=e.getElementsByTagName("head")[0];a||(a=e.body.parentNode.appendChild(e.createElement("head")));a.appendChild(b)}function _loadJs(b){var a=e.createElement("script");a.type="text/javascript";a.charset="UTF-8";a.src=b;f(a)}function _loadCss(b){var a=e.createElement("link");a.type="text/css";a.rel="stylesheet";a.charset="UTF-8";a.href=b;f(a)}function _isNS(b){b=b.split(".");for(var a=d,c=0;c<b.length;++c)if(!(a=a[b[c]]))return false;return true}
function _setupNS(b){b=b.split(".");for(var a=d,c=0;c<b.length;++c)a=a[b[c]]||(a[b[c]]={});return a}d.addEventListener&&typeof e.readyState=="undefined"&&d.addEventListener("DOMContentLoaded",function(){e.readyState="complete"},false);
if (_isNS('google.translate.Element')){return}var c=_setupNS('google.translate._const');c._cl='en';c._cuc='googleTranslateElementInit';c._cac='';c._cam='';var h='translate.googleapis.com';var b=(window.location.protocol=='https:'?'https://':'http://')+h;c._pah=h;c._pbi=b+'/translate_static/img/te_banner_bk.gif';c._pci=b+'/translate_static/img/te_ctrl.gif';c._phf=h+'/translate_static/js/element/hrs.swf';c._pli=b+'/translate_static/img/loading.gif';c._plla=h+'/translate_a/l';c._pmi=b+'/translate_static/img/mini_google.png';c._ps=b+'/translate_static/css/translateelement.css';c._puh='translate.google.com';_loadCss(c._ps);_loadJs(b+'/translate_static/js/element/main.js');})();

这主要是出于绩效原因避免额外的请求,并避免网站必须与Google通信,除非从下拉框中选择一种语言。

可以使用CSS自定义下拉框。例如,这是我如何在使用该网站上显示框的方式。

alt text

其他提示

请参阅这个问题 本地化WordPress内容的最佳实践? 也许您从这个想法中找到了解决方案

我正在使用QTranslate插件进行正在开发的项目,并且对结果感到非常满意。

http://www.qianqin.de/qtranslate/http://wordpress.org/extend/plugins/qtranslate/

干杯

许可以下: CC-BY-SA归因
scroll top