Warum wird post-slug nicht für Entwürfe gespeichert?

Ich versuche, den Wert des “New-Post-Slugs” zu erhalten (das Bit, das du bearbeiten kannst, um deinen Slug für einen Post anzupassen, aber bizarrerweise hat er kein name-Attribut, wie du es von einem Formularfeld erwartest zu haben … das Update muss in Ajax im Hintergrund erfolgen)

Woran ich festhalte, sind 2 Dinge:

  • Warum erhalten Posts ihren post_name (slug) beim Speichern eines Entwurfs nicht aktualisiert? (nicht automatisches Speichern, ich meine den ‘Entwurf speichern’ Button)

  • Wenn ich das manuell versuchen sollte (mit dem save_post- Hook), wie kann ich den Wert des ‘new-post-slug’ erhalten (da dieses Feld nicht in der $ _POST-Variable verfügbar ist). Ich denke, ich könnte versuchen, eine Pre-Form-Submit jQuery Append-to-Form-Typ-Sache, die dieses Feld bekommt.

Wenn der wp_handle_upload_prefilter , um den Dateinamen wp_handle_upload_prefilter , bevor er hochgeladen wird, wird post_name (der Slug) nicht festgelegt:

 add_filter('wp_generate_attachment_metadata', 'check_images_file_to_slug', 10, 2); public function check_images_file_to_slug($image_info) { // Get the parent post ID, if there is one if( isset($_GET['post_id']) ) { $post_id = $_GET['post_id']; } elseif( isset($_POST['post_id']) ) { $post_id = $_POST['post_id']; } // Only do this if we got the post ID--otherwise they're probably in // the media section rather than uploading an image from a post. if(is_numeric($post_id)) { /* @var @post WP_Post */ $post = get_post($post_id); // Here $post->post_name (the slug), is empty for post-new.php (Adding new post) } } 

Solutions Collecting From Web of "Warum wird post-slug nicht für Entwürfe gespeichert?"