如何翻译WordPress插件头?
我已经使用翻译了插件中的所有字符串
-
__()
和_e()
功能 -
.po文件
-
文本域
-
WordPress加载语言文件的功能
load_plugin_textdomain('mnbaa-seo', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
我想翻译这部分
<?php
/*
Plugin Name: Mnbaa SEO
Plugin URI: http://www.mnbaa.com
Description: WP blugin fom make SEO and Social SEO.
Author: Mnbaa CO
Author URI: http://www.mnbaa.com
Version: 1.0
Text Domian:mnbaa-seo
Domain Path: /languages/
*/
?>
您必须使用WordPress的i18n工具才能使插件的描述可翻译。i18n工具的makepot.php允许您自动生成一个.pot文件,然后可以使用该文件创建.mo/.po对(例如免费的PoEdit)。
最简单的方法是:
- 从下载ziphttps://github.com/wp-mirrors/wp-i18n-tools.
- 将其内容提取到wp-includes文件夹中
- WP根目录中的命令行一行:
$ php wp-includes/makepot.php wp-plugin wp-content/plugins/MYPLUGIN/ wp-content/plugins/MYPLUGIN/MYLANGFOLDER/MYPLUGIN.pot
- 然后,您将生成的.pot文件作为PoEdit的源文件
- 最后,确保像您的插件加语言代码一样命名.mo/.po,例如:MYPLUGIN-de_de.mo/MYPLUGIN-de_de.po
更多(但不是最新的)信息可以在WPO找到:https://codex.wordpress.org/I18n_for_WordPress_Developers#Translating_Plugins_and_Themes
我想知道PoEdit Pro是否可以在不需要我们调用命令行的情况下做到这一点。。。也许知道的人可以在下面留言。
在插件代码中添加描述和插件名称的伪翻译:
$dummy_name = __( 'Mnbaa SEO', 'mnbaa-seo' );
$dummy_desc = __( 'WP blugin fom make SEO and Social SEO.', 'mnbaa-seo' );
然后重新生成.po
/.mo
对。
我只使用/languages
作为Domain Path
,没有尾部斜杠
请检查此答案以了解插件对I18n的支持。