使用 Polylang 字符串翻译功能翻译模版中的字符串

开发WordPress多语言网站,本站推荐过两个插件,其中一个就是Polylang,越用越觉得这个插件好用。今…

开发WordPress多语言网站,本站推荐过两个插件,其中一个就是Polylang,越用越觉得这个插件好用。今天要给大家介绍的是 Polylang 的字符串翻译功能。

在开发WordPress主题的时候,我们避免不了在模版中使用一些固定字符串,对单语言网站来说,简单粗暴的写死这些字符串一般没什么问题 。开发多语言网站的时候,这么干就不行了,因为这些固定的字符串也需要翻译。有两种办法可以实现这些固定字符串的翻译。一种是使用 Gettext 方法,另外一种就是使用 Polylang 的字符串翻译功能。

注册需要翻译的字符串

使用Polylang 字符串翻译之前,我们需要先注册需要翻译的字符串,注册方法很简单,直接使用 pll_register_string 函数,传入两个参数就可以搞定。注册后,这些需要翻译的字符串就出现在了后台的「语言->字符串翻译」页面中,我们在这些页面中编辑对应语言的翻译就可以了。

$strings = [
    'Hot Videos',
    'Read More',
    'Read All',
];

foreach ($strings as $s) {
    pll_register_string(sanitize_key($s), $s);
}

在模版中显示字符串

在模版原来使用固定字符串的地方,使用 pll__() 函数输出来代替固定字符串即可按语言显示翻译后的字符串。

 <?= pll__('Read More'); ?>

注意:在前端调用的字符串必须和注册的字符串完全一致,才能输出字符串翻译,空格、标点、大小写不一致都会导致翻译无法正确输出。

相对于 Gettext 方法,Polylang 的字符串翻译功能更简单,更适合不擅长代码的网站管理员使用。首先,Polylang直接在WordPress后台就能进行翻译,不需要额外的软件、也不会产生额外的文件。然后新增字符串的时候,直接在后台刷新即可。在 Polylang 中新增语言后,字符串翻译中也会即时出现该语言。

性能方面,Polylang 肯定没有 Gettext 方法优秀,不过对于浏览量不大的网站,或者开启了页面缓存的情况下,两种方法的区别并不明显。

类别:WordPress技巧

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT

登录 账号发表你的看法,还没有账号?立即免费 注册