我正在寻找一种方法,用一个简单的保存按钮来代替submitdiv元框(发布框)。通过查看Core,我看到有一个简单的函数返回提交按钮:get\\u submit\\u button()。
我可以替换publish metabox,只显示一个简单的“save”(保存)按钮,并使用wp\\u insert\\u post\\u data()挂钩确保帖子的状态正确。然而,当我编辑帖子并尝试保存时,“你确定要…”对话框出现。我猜某种暂时性的东西不见了,但我不知道在哪里。
请注意,我有not 只是想把东西和css. 这是不安全的,坦率地说(在我看来)是不可靠的。
以下是我目前掌握的情况:
/* Remove the default publish meta box
*
*/
add_action( \'admin_head\', \'cs_admin_meta_boxes\' );
function cs_admin_meta_boxes(){
remove_meta_box( \'submitdiv\', \'cpt_name\', \'side\');
}
/* Add meta \'save\' meta box
*
*/
add_action( \'add_meta_boxes\', \'cs_meta_box_add\' );
function cs_meta_box_add(){
add_meta_box( \'cs-save\', \'Save\', \'cs_meta_box_save\', \'cpt_name\', \'side\', \'high\' );
}
/* \'Save\' meta box content
*
*/
function cs_meta_box_save(){
echo get_submit_button( $text = \'Save\', $type = \'primary\', $name = \'submit\', $wrap = true, $other_attributes = NULL );
}
/**
* Sets the post status to published
*/
add_filter( \'wp_insert_post_data\', \'cs_force_published\' );
function cs_force_published( $post ) {
if( in_array( $post[ \'post_type\' ], array( \'cpt_name\') ) ) {
$post[\'post_status\'] = \'publish\';
}
return $post;
}