在我看来,寻找其他替代方法来翻译一个主题是不推荐的,这将是其受欢迎程度的一个挫折,因为it will not allow users to add translations the same way 它们可以用于其他主题和插件。
有关备选方案,请参见@PieterGoosens的回答。如果您问这个问题是因为您发现了添加i18n 对于过于复杂的主题,这里有一个逐步的步骤,使用PO/MO/POT文件。(所以它实际上并没有回答您的具体问题,但可能对那些需要添加主题i18n的人有所帮助)。假设你的主题是yourtheme
:
function load_yourtheme_theme_textdomain() {
$path = get_template_directory() . \'/lang\';
load_theme_textdomain( \'yourtheme\', $path);
}
add_action( \'after_setup_theme\', \'load_yourtheme_theme_textdomain\' );
您需要将可翻译字符串包装在
__()
函数,使用
\'yourtheme\'
作为textdomain。例如:
echo __(\'Some text\', \'yourtheme\');
这里有一个
list of WP l18n wrappers
. 请查看该页上的相关功能。
现在:
下载并安装Poedit. 它是免费的打开它,单击File
»;New
. 选择默认语言将文件另存为.pot
在里面/lang
文件夹,位于主题内转到Catalogue
»;Properties
, 添加项目的一般详细信息。使用UTF-8打开Sources Paths
(第二个选项卡),添加../
作为基本路径单击行中的第二个按钮(悬停在“New Item”上的按钮)并添加一个点.
作为新项目的路径。点击Ok
保存设置
Catalogue
»;Update from sources
. 该文件将自动获取主题的所有可翻译字符串。再次保存(请确保将其另存为
.pot
) 你就完了。
如果我跳过了任何步骤,或者你在任何步骤中遇到了困难,我会更新详细信息。