查找自定义分类Metabox的回调函数

时间:2018-02-26 作者:Dom

我正在寻找一种方法,将我的自定义分类元盒(右侧)移动到帖子区域(中间)。我知道你可以简单地拖放它,但我希望它在新用户的默认张贴区。

我的方法是使用remove_meta_box(), 然后使用add_meta_box(). 问题是I don\'t know what callback function to call when adding it back.

/* Remove movies metabox from sidepanel */
function hide_metabox(){
    remove_meta_box( \'tagsdiv-movies\', \'movies\' , \'side\' );
}
add_action( \'admin_menu\' , \'hide_metabox\' );


/* Add back movies metabox, but in post area */
add_action(\'add_meta_boxes\', \'add_back_post\');
    function add_back_post(){
    /* Not sure what to put as the thrid argument */
    add_meta_box(\'tagsdiv-movies\',\'Movies\', \'WHAT_CALLBACK_ARG\', \'movies\', \'normal\', \'high\');
}

Custom metabox "movies"

作为补充说明,我使用Custom Post Type UI (CPT UI),它在创建自定义分类法时基本上遵循标准过程。

我也不确定这是否回答了我的问题,因为我不太了解这里提供的信息:Is there a predefined callback function for custom categories?.

1 个回复
最合适的回答,由SO网友:Milo 整理而成

非层次分类法需要的回调是post_tags_meta_box.

层次分类法需要的回调是post_categories_meta_box.

例如,代码为:

/* Remove movies metabox from sidepanel */
function hide_metabox(){
    remove_meta_box(
        \'tagsdiv-movies\',
        \'your-post-type\' ,
        \'side\'
    );
}
add_action( \'admin_menu\' , \'hide_metabox\' );


/* Add back movies metabox, but in post area */
add_action(\'add_meta_boxes\', \'add_back_post\');
    function add_back_post(){
    add_meta_box(
        \'tagsdiv-movies\',
        \'Movies\',
        \'post_tags_meta_box\',
        \'your-post-type\',
        \'normal\',
        \'high\',
        array( \'taxonomy\' => \'movies\' )
    );
}
另一个重要变量是metabox ID。在您的示例中,tagsdiv-movies 针对具有slug的非层次分类法的元盒movies. 如果相同的分类法是分层的,那么ID将是moviesdiv.

结束

相关推荐

在WordPress中使用metabox插件的文件_EXISTS()的问题

我正在使用metabox插件(https://wordpress.org/plugins/meta-box/) 我得到这个警告信息:警告:file\\u exists():文件名超过此平台上允许的最大路径长度(4096):/usr/home/mydomain。com/web/BLOG/wp-content/plugins/meta-box/inc/905ai0evm8qpx-wsfhq1h72rml-zz614ijl0r7dot3brnnip1atfrlg-irkh4c278jlcq7f7dr8pfnvu