Wie erstellt man ein Thumbnail mit PHP?

Ich erstelle Beiträge mit wp_insert_post() , aber diese Beiträge haben keine vorgestellten Bilder.

Ich habe eine Post-ID und einen Pfad zum Bild auf meinem Server, wie stelle ich sie als das vorgestellte Bild ein?

EDIT: Ich habe meinen Code hinzugefügt, um einen Artikel zu veröffentlichen. Es muss nur das Thumbnail (Featured Image) hinzugefügt werden.

 imagePath= ABSPATH . "wp-content\uploads\image\my_image.jpg"; publication($titre, $content, $categriesID, $tags); function publication ($titre, $content, $categories, $tags){ $user_id = get_current_user_id(); $my_post = array( 'post_title' => $titre, 'post_content' => $content, 'post_status' => 'publish', 'post_author' => $user_id, 'post_category' => $categories, 'tags_input' => $tags ); $post_ID = wp_insert_post( $my_post ); } 

Solutions Collecting From Web of "Wie erstellt man ein Thumbnail mit PHP?"

Ich bin stolz Ihnen mitteilen zu können, dass ich die Lösung dank @cjbj guten Rat gefunden habe. Ich füge den Code hier ein. Ich weiß, dass es anderen hilft.

Außerdem habe ich die function preg_quote , um den Pfad zum Bild zu schützen.

 protected_path = preg_quote($filename); 

Dieser Code funktioniert großartig.

 // $filename should be the path to a file in the upload directory. $filename = '/path/to/uploads/2013/03/filename.jpg'; // The ID of the post this attachment is for. $parent_post_id = 37; // Check the type of file. We'll use this as the 'post_mime_type'. $filetype = wp_check_filetype( basename( $filename ), null ); // Get the path to the upload directory. $wp_upload_dir = wp_upload_dir(); // Prepare an array of post data for the attachment. $attachment = array( 'guid' => $wp_upload_dir['url'] . '/' . basename( $filename ), 'post_mime_type' => $filetype['type'], 'post_title' => preg_replace( '/\.[^.]+$/', '', basename( $filename ) ), 'post_content' => '', 'post_status' => 'inherit' ); // Insert the attachment. $attach_id = wp_insert_attachment( $attachment, $filename, $parent_post_id ); // Make sure that this file is included, as wp_generate_attachment_metadata() depends on it. require_once( ABSPATH . 'wp-admin/includes/image.php' ); // Generate the metadata for the attachment, and update the database record. $attach_data = wp_generate_attachment_metadata( $attach_id, $filename ); wp_update_attachment_metadata( $attach_id, $attach_data ); set_post_thumbnail( $parent_post_id, $attach_id );