Show meta box only when post is being published first time
I haven’t tested this but the idea is to check the post status, if the post is not published, show the metabox otherwise don’t. function non_publish_metaboxes() { global $post; if(!isset($post)) return; if($post->post_status !== ‘publish’){ // … Show Metabox } } add_action( ‘add_meta_boxes’, ‘non_publish_metaboxes’ );