翻译自定义帖子类型元数据

时间:2015-06-24 作者:scarably

是否可以使用本地化翻译自定义post类型的元框(标签而不是元框字段的值)?或者我必须使用WPML之类的插件吗?提前谢谢你。我读过这个Custom metabox translation 但我尝试了代码样式本地化,但没有成功,所以我不确定是否有可能翻译这些标签。

编辑:

我将元盒数组传递给构造函数:

array(
    \'id\' => \'rti-meta-box-1\',
    \'title\' => __(\'Title Options\',\'rti\'),
    \'pages\' => array(\'post\', \'page\', \'courses\'),
    \'context\' => \'advanced\',
    \'priority\' => \'default\',
    \'function_callback\' => \'show\',
    \'fields\' => array(
        array(
            \'name\' => __(\'Show title?\',\'rti\'),
            \'id\' => $prefix . \'title_meta\',
            \'type\' => \'checkbox\',
            \'std\' => 1
        ),
        array(
            \'name\' => __(\'Show breadcrumbs?\',\'rti\'),
            \'id\' => $prefix . \'breadcrumb_meta\',
            \'type\' => \'checkbox\',
            \'std\' => 1
        )
    )
)
然后在构造函数中add 已连接到admin_menu 哪里add_metabox 被调用。作用add 如下所示:

function __construct($meta_box) {
    $this->_meta_box = $meta_box;       

    add_action(\'admin_menu\', array(&$this, \'add\')); 
    add_action(\'save_post\',  array(&$this, \'save\'));
}

/// Add meta box for multiple post types
function add() {
    foreach ($this->_meta_box[\'pages\'] as $page) {
        add_meta_box($this->_meta_box[\'id\'], $this->_meta_box[\'title\'], array(&$this, $this->_meta_box[\'function_callback\']), $page, $this->_meta_box[\'context\'], $this->_meta_box[\'priority\']);
    }
}
当我翻译例如标题选项时,它看起来是一样的。

1 个回复
SO网友:scarably

我发现了问题所在。仅仅本地化标签是不够的,例如。(\'Label\',\'text_domain\'). 还有变量本身——我的代码应该是这样的:

add_meta_box($this->_meta_box[\'id\'], ($this->_meta_box[\'title\'],\'text_domain\'), array(&$this, $this->_meta_box[\'function_callback\']), $page, $this->_meta_box[\'context\'], $this->_meta_box[\'priority\']);

结束

相关推荐

更新上传图片的metabox时出现问题

我创建了一个自定义帖子类型和元框,用于上载另一个图像。问题是,当我添加图像时,它会正确显示在后端的位置,当我更新它时,它也会显示相同的图像。但是当我回到帖子修改它时,我找不到图片,如果我更新帖子,那么就没有图片显示。<?php function hotels_meta_boxes() { add_meta_box( \'hotels_form\', \'Hotels - Détails\', \'hotels_form\', \'hotels\', \'normal\', \'