Wie werden Post Thumbnails gesetzt in PHP ?

  • Guten Morgen!

    Ich habe eine Verständnisfrage zu den Post Thumbnails.
    Und zwar habe ich hier ein Skript, welches mir automatisiert Artikel erzeugt und z.B. auch einer Kategorie etc. zuweist.
    Nun möchte ich, dass hier ebenfalls direkt das passende Post Thumbnail (Bild existiert schon in WP) verknüpft wird.

    Vermutlich ist es nur eine einzige Zeile mal wieder. Aber mit dem Codex komme ich nicht weiter.
    Ich finde Funktionen:

    • um das zu Prüfen ob ein solches Bild verknüpft ist (has_post_thumbnail()),
    • um ein Bild zu laden (get_the_post_thumbnail() oder evtl. the_post_thumbnail()),
    • und um die Größe einzustellen (set_post_thumbnail_size()

    Was mir fehlt ist das passende "set_the_post_thumbnail()" zu der get-Funktion. Die gibt es aber laut Google auch nicht. In dem wp_insert_post Array finde ich das Feld ebenfalls nicht.
    Wo liegt mein Fehler?

    Hier noch der relevante Abschnitt des Skripts:

    PHP
    $post = wp_insert_post(array( 
                    'post_content' => $content, 
                    'post_title' => $title, 
                    'post_status' => 'publish', 
                    'post_category' => explode(',',TNG_RSS_CATEGORY), 
                    'tags_input' => explode(',',TNG_RSS_TAGS), 
                    'post_author' => TNG_RSS_AUTHOR, 
                    'post_date' => date('Y-m-d H:i:s',$date) 
                );


    Vielen Dank!

    Gruß,
    Marcus

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ich habe es inzwischen selbst rausgefunden.
    Es gehört gar nicht in den Array von dem wp_insert_post(), da habe ich an der falschen Stelle gesucht.

    Stattdessen wird es im Anschluss an das Anlegen des Artikels gemacht:

    [COLOR=#000000][COLOR=#007700]

    PHP
    $post = wp_insert_post(array( 
                    'post_content' => $content, 
                    'post_title' => $title, 
                    'post_status' => 'publish', 
                    'post_category' => explode(',',TNG_RSS_CATEGORY), 
                    'tags_input' => explode(',',TNG_RSS_TAGS), 
                    'post_author' => TNG_RSS_AUTHOR, 
                    'post_date' => date('Y-m-d H:i:s',$date) 
                );  
    set_post_thumbnail( $post, $thumbnail_id );

    Gruß,
    Marcus
    [/COLOR][/COLOR]

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!