如何翻译unctions.php?

时间:2017-01-19 作者:Arsenii

我正在努力functions.php 在子主题中,我为我的项目提供了一个CPT和自定义分类法。我唯一需要从functions.php 并且确保在核心、主题或插件的任何更新之后,它仍将保持原样(我指的是翻译)。

我所做的:

我试了很多次__() 它以多种不同的方式发挥作用,并实现了I18L L10N文章中的功能,但它只与插件和主题相关。

我创建了一个。po并将其编译为。我的子主题和父主题的mo文件。一旦我在functions.php:

    add_action( \'after_setup_theme\', \'MyTheme-child_setup\' );
function MyTheme-child_setup(){
    load_theme_textdomain( \'MyTheme-child\', get_template_directory() . \'/languages\' );
}
并添加.po.mo (他们的名字只是一个区域设置)都是languages/ 父主题和子主题的目录它工作得很好。但是一旦父主题更新,所有内容都将消失。。。

我用过__() 功能如下:

function my_cpt() {
$labels = array(
    \'name\'               => __( \'Node-A\', \'MyTheme-child\'),
但正如我所说,只有当双方.po.mo 我们在/languages 父主题和子主题的目录。

我需要一个解决方案来捕获一些textdomain,它将只在我的functions.php 并且不会受到任何核心更新或插件主题更新的影响。

感谢您的帮助!

1 个回复
SO网友:Arsenii

添加到functions.php 下一个:

$pather = get_stylesheet_directory().\'/languages\';
load_child_theme_textdomain( \'Savia-child\', $pather );
然后称之为:

__( \'text to translate\', \'Savia-child\');
在子主题中,我创建了一个目录:/languages 然后放在那里pomo 文件名为:[locale].po/.mp 例如:ru_RU.poru_RU.mo.

就是这样。