.pot
文件(Portable Object Template)是翻译模板文件,用于在 WordPress 主题和插件中管理翻译字符串。它包含主题或插件中所有可翻译的文本字符串,但不包含具体的翻译。翻译者可以使用 .pot
文件来生成特定语言的 .po
和 .mo
文件。
如何生成 .pot
文件
以下是如何生成和使用 .pot
文件的步骤:
1. 安装和配置 Poedit
Poedit 是一个流行的翻译编辑工具,可以用于创建和编辑 .pot
、.po
和 .mo
文件。
- 从 Poedit 官网 下载并安装 Poedit。
- 打开 Poedit,选择“创建新翻译”。
2. 扫描主题或插件文件以提取可翻译字符串
可以使用 Poedit 的“提取字符串”功能,也可以手动创建 .pot
文件。
使用 Poedit 提取字符串
- 在 Poedit 中,选择“文件” > “新建项目”。
- 选择要翻译的 WordPress 主题或插件目录。
- 在“项目设置”中,设置文本域和其他项目信息。
- 配置 Poedit 扫描源文件以提取可翻译字符串:
- 点击“源路径”选项卡,添加主题或插件的根目录。
- 点击“源关键字”选项卡,添加 WordPress 特定的翻译函数关键字(如
__
、_e
、_n
等)。
手动创建 .pot
文件
如果你想手动创建 .pot
文件,可以使用 WP-CLI 工具或其他命令行工具。
- 使用 WP-CLI:
- 安装并配置 WP-CLI。
- 运行以下命令生成
.pot
文件:wp i18n make-pot . languages/your-theme.pot --exclude=vendor
这将在当前目录下扫描所有 PHP 文件,并在languages
目录下生成your-theme.pot
文件。
3. 生成 .po
和 .mo
文件
使用 .pot
文件生成特定语言的 .po
和 .mo
文件。
- 打开 Poedit,选择“新建翻译”。
- 从
.pot
文件创建翻译。 - 选择目标语言(如中文)。
- 翻译每个字符串并保存。Poedit 会生成
.po
和.mo
文件。
4. 将 .po
和 .mo
文件上传到主题或插件的 languages
文件夹
确保翻译文件命名规范为 {textdomain}-{locale}.po
和 {textdomain}-{locale}.mo
。例如,对于中文翻译文件:
1 2 3 4 |
my-theme/ ├── languages/ │ ├── zh_CN.po │ ├── zh_CN.mo |
5. 在主题中加载语言文件
确保在主题的 functions.php
文件中正确加载语言文件。
1 2 3 4 |
function mytheme_setup() { load_theme_textdomain('my-theme', get_template_directory() . '/languages'); } add_action('after_setup_theme', 'mytheme_setup'); |
示例步骤
- 生成
.pot
文件:
- 使用 WP-CLI 或 Poedit 提取主题中的可翻译字符串。
- 创建翻译文件:
- 打开 Poedit,选择“新建翻译”,加载生成的
.pot
文件。 - 选择目标语言,并翻译每个字符串。
- 保存文件,Poedit 会生成
.po
和.mo
文件。
- 上传翻译文件:
- 将生成的
zh_CN.po
和zh_CN.mo
文件上传到主题的languages
文件夹中。
- 确保语言加载正确:
- 在主题的
functions.php
文件中添加加载语言文件的代码。
1 2 3 4 |
function mytheme_setup() { load_theme_textdomain('my-theme', get_template_directory() . '/languages'); } add_action('after_setup_theme', 'mytheme_setup'); |
完成这些步骤后,WordPress 应该会根据站点语言设置自动加载相应的翻译文件。如果你在站点设置中选择了中文(简体),主题中的文本应该会显示为中文。