wordpress移动发布元箱

时间:2013-11-13 21:21:55

标签: wordpress layout plugins admin

我正在制作一个插件,我正在尝试:

1-在正常部分中将发布元数据从一侧移动到页面底部。 插件自定义帖子类型编辑页面的2强制1列布局。 3-删除自定义帖子类型的屏幕选项选项卡。

我正在使用下一个代码块,但它不起作用:

function sds_do_meta_boxes() {
    remove_meta_box( 'submitdiv', 'sliding_panel', 'side' );
    add_meta_box( 'submitdiv', __( 'Publish' ), 'post_submit_meta_box', 'sliding_panel', 'normal', 'core' );
}
add_action('do_meta_boxes', 'sds_do_meta_boxes');

function SDS_init() {  //The current user is already authenticated by this time             
        add_filter( 'screen_layout_columns', 'so_screen_layout_columns' );  
        add_filter( 'get_user_option_screen_layout_dashboard', 'so_screen_layout_dashboard' );  
        add_filter( 'screen_options_show_screen', 'SDS_remove_screen_options_tab');                     
}

add_action( 'init', 'SDS_init' );

function so_screen_layout_columns( $columns ) {
    $columns['dashboard'] = 1;
    return $columns;
}   
function so_screen_layout_dashboard() {
    return 1;
}
function SDS_remove_screen_options_tab() {
    return false;
}

因此,“发布”元框已被删除,但不会重新添加。此外,1列布局筛选器不起作用。我需要帮助:))

1 个答案:

答案 0 :(得分:-1)

$priority参数从core更改为high并将add_action的优先级设置为0应该可以解决问题。我还建议使用动态add_meta_boxes_{$post_type}挂钩:

add_action( 'add_meta_boxes_sliding_panel', 'sds_do_meta_boxes', 0, 1 );
function sds_do_meta_boxes( $post )
{
    remove_meta_box( 'submitdiv', 'sliding_panel', 'side' );
    add_meta_box( 'submitdiv', __( 'Publish' ), 'post_submit_meta_box', 'sliding_panel', 'normal', 'high', null );
}