繁体   English   中英

以不同的语言(使用WP的l10n功能)在Wordpress网站上仅显示几页

[英]Display just a few pages on Wordpress site in different language (using WP's l10n features)

我有一个英文的Wordpress网站。 不过,我需要有几个信息页面的网站(像http://x.com/Info-Spanishhttp://x.com/Info-German中显示的不同的语言,等等)。 不是整个站点,而是这2-3个单独的页面(因此,我不能弄乱wp-config文件中的WPLANG常量)。

所有这些信息页面均基于完全相同的模板,因此我想使用PO / MO文件和Wordpress的内置本地化(l10n)功能以适当的语言显示模板。

我的代码是这样的:

在functions.php中:

 load_theme_textdomain( 'my_theme_name', get_template_directory().'/languages' );

/ Info-Spanish页面的模板:

function set_my_locale( $lang ) { return 'en_ES'; }
add_filter( 'locale', 'set_my_locale' );
add_filter( 'theme_locale', 'set_my_locale' );
require('info.php');

以及基本的info.php文件(包括在上面):

_e("Here is some important info which will be displayed in the correct language.");

我已经使用POedit在language /文件夹中创建了适当的翻译文件。 但是,它不起作用-信息始终以英文显示。 我究竟做错了什么? WordPress是否切换语言环境?

(顺便说一句,有一种方法可以从Wordpress中获取有关这些步骤的调试信息?我什至不能100%地确定它能够在我的语言/文件夹中找到我的PO / MO文件,因为屏幕上没有针对国际化的东西。)

找到了一个解决方案...将该行从functions.php移出,并将其放在我的/Info-Spanish模板代码的顶部,并将主题名称更改为“默认”:

load_theme_textdomain( 'default', get_template_directory().'/languages' );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM