wie man benutzerdefinierte Post mit “publish” Standardfunktionalität nicht im Entwurf speichern?

Dies ist meine benutzerdefinierte Post-Typ-Code alles funktioniert gut, aber wenn ich Post, der Beitrag wird im Entwurfsmodus gespeichert.

$args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite' => array('slug' => $slug), 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => false, 'menu_position' => 4, 'supports' => $supports, 'taxonomies' => array( 'category' ), ); register_post_type(self::$PostTypeName, $args); 

Solutions Collecting From Web of "wie man benutzerdefinierte Post mit “publish” Standardfunktionalität nicht im Entwurf speichern?"

Verwenden Sie den Filter-Hook “wp_insert_post_data” für diese Art von Problem

 add_filter('wp_insert_post_data', 'filter_post_data', 99, 2); function filter_post_data($postData, $postarr) { if ($postData['post_status'] == 'draft') { $postData['post_status'] = 'publish'; } return $postData; }