WPML自定义字符串转换在容器之外

时间:2020-09-16 作者:Botond Vajna

我试图添加一个自定义字符串以在wpml中进行翻译,但当我使用\\u e(…)内容跳出容器

如果我这样使用:

echo \'<h1>\' . $month . \' \' . $day . \'</h1>\';
html正常:

<h1>September 29</h1>
但如果我用这样的翻译:

echo \'<h1>\' . _e($month, \'simultan\') . \' \' . $day . \'</h1>\';
转换后的字符串跳出h1:

Septembrie<h1>29</h1>

1 个回复
最合适的回答,由SO网友:GeorgeP 整理而成

当您使用_e 你回显翻译后的字符串。但你已经有了echo 所以只要使用__(.

这是您示例的正确代码

echo \'<h1>\' . __(\'September\', \'simultan\') . \' \' . $day . \'</h1>\';
如果要在翻译中添加变量,应使用sprintf 像这样:

$date = sprintf ( __(\'%s %d\', \'simultan\'), $month, $day );
echo \'<h1>\' . $date . \'</h1>\';
您可能还想看看date_i18n 功能,因为您正在翻译日期。

参考号:

Wordpress I18N

sprintf manual

相关推荐

Theme Translation?

我下载了一个主题名为Contango 来自Wordpress主题库。该主题有一个名为“languagues”的文件夹和一个名为“contango.po”的文件。我可以打开那个文件进行翻译,但什么也没变。我怎样才能把这个主题翻译成我自己的语言</非常感谢并为我的新手问题道歉?