2016-05-02 110 views
3

问题的最佳实践与多语言支持


正如我在木材文档中已经看到了可以添加喜欢this多语言支持:

// Set language to French 
putenv('LC_ALL=fr_FR'); 
setlocale(LC_ALL, 'fr_FR'); 

// Specify the location of the translation tables 
bindtextdomain('myAppPhp', 'includes/locale'); 
bind_textdomain_codeset('myAppPhp', 'UTF-8'); 

// Choose domain 
textdomain('myAppPhp'); 

{% trans "Hello World!" %} 

{% trans string_var %} 

{% trans %} 
    Hello World! 
{% endtrans %} 

问题是这样的,我有静态网站 - 将被翻译成法语,但我无法从wp后端添加多语言内容。所以我相信,有一种更好的方式来实现用木材编写的WordPress主题来实现多语言支持。

问题


我想知道什么是建立与木材,实现了其多语言支持一个WordPress主题最好的和最可靠的方法。

有什么最佳实践吗?

回答

2

多语言WordPress是一个话题,关于如何做到最好还有很多争论。所以目前可能没有一种最好,最可靠的方法来做到这一点。

与木材一起使用多语言与构建普通WordPress主题时的方式并无太大区别。注意Timber与Twig不一样。 Timber使用Twig,这是一种模板引擎,可以更轻松地将数据和逻辑从显示(HTML)问题中分离出来。因此,如果您想了解如何添加多语言支持,您首先需要了解如何以Timber/WordPress的方式进行操作。您可能不需要任何Twig’s i18n Extension提供的功能,您已经完成了第一步。

阅读关于Multilingual WordPress的法典页面以开始使用。

如果您想从翻译的数据库中提取内容,您可能需要使用插件。其中,我是用我自己的流行的是:

当您安装和多语言内容准备好其中的一个,那么你是好去。您并不需要改变主题中的任何内容以使基本功能正常工作。添加语言切换器或链接到菜单之外的其他帖子有点不同。在那里你必须参考你将要使用的插件的文档。

如果你有静态字符串在你的主题,你也想翻译,你将不得不考虑添加internationalization (i18n)到你的主题。

由于木材版本1.x,您可以在您的Twig文件中使用大部分common translation functions。有关于internationalization in the Timber Docs的指南。