php – 如何翻译WordPress模板名称?
我知道如何通过使用Poedit生成.po和.mo文件来为主题和模板创建翻译.但是,由于模板名称是用每个模板文件顶部的
PHP注释编写的,所以没有办法在我看到它时进行翻译.
WordPress模板标题: /** * Template Name: Three columns * * @package WordPress */ 模板名称由Wordpress解析,用于在创建页面时填充模板选择下拉列表. 所以我的问题是:有没有办法翻译WordPress模板名称? WordPress还会查找我可以在我的模板文件中设置的任何特定变量吗?还是只是不可能?
我最近偶然发现.这是我如何解决的:
首先,添加(如果你已经没有)Text Domain:mytext_domain到你的style.css,其中mytext_domain是你的主题的实际文本域. 然后在你的主题的某处添加一个虚拟调用到翻译功能(最好的事情是添加它在模板名称声明下,所以你不知道为什么你把它): /** * Template Name: Three columns * * @package WordPress */ __( 'Three columns','mytext_domain' ); 这样做的原因是因为WordPress将你的模板名称传递给translate()函数,但是由于翻译插件解析你的代码,他们并不知道你的模板名称应该是.po(或者是.mo)的一部分.文件.对__()的伪调用修复了该问题. 而您将Text Domain声明添加到style.css的原因是因为这是WordPress在解析模板名称时查找主题的文本域的位置. 我不能给你确切的来源,因为我真的只是围绕核心代码,直到我想出了它的工作原理,以及如何能够翻译我的模板名称. PP:我不知道Poedit是如何工作的 – 如果您手动添加您的翻译,您可能不需要虚拟调用 – 只需测试和使用它,并使用最适合您的方式:) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |