我正在制作一个插件,我正在尝试:
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列布局筛选器不起作用。我需要帮助:))
答案 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 );
}