1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Artikelbild per PHP verkleinern

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von siliciumcarbid, 16. Dezember 2013.

  1. siliciumcarbid

    siliciumcarbid New Member

    Registriert seit:
    16. Dezember 2013
    Beiträge:
    1
    Zustimmungen:
    0
    Präfix wäre dann WP 3.8 ;)

    Nun ich habe mich totgesucht, totge-programmiert und totgetestet. Nun bin ich also an dem Punkt angekommen, bei dem ich jemanden fragen muss :grin:
    Mit einem externen Script füge ich Artikel in meine Wordpress-Installation ein. Und das klappt auch sehr gut. Zusätzlich soll noch ein Artikelbild angelegt werden. Das geht so weit auch. Aber leider ist es nicht skaliert. Nun habe schon einiges gelesen zum Thema skalieren von Artikelbildern (post-thumbnails) und soweit verstehe ich die Funktionsweise dieser Funktionen auch. Doch alle haben sie etwas gemeinsam, das ich nicht verstehe: Bei all diesen Funktionen kann als Parameter zwar die Grösse angegeben werden, nicht aber um welchen Post (post id zb.) es sich handelt. Ich frage mich darum immer: "woher soll die Funktion dann wissen, welches Thumbnails sie verkleinern soll?".
    Ein Beispiel wäre die Funktion the_post_thumbnail( $size, $attr );.

    Ich habe aber schon einen Ansatz gefunden wie dieser:
    get_the_post_thumbnail( $post_id, $size, $attr );
    Das würde einleuchten, aber funktionieren tut es dennoch nicht. Die Grösse bleibt unverändert.

    So und nun hoffe ich, Ihr könnt mir da helfen. Der Post selbst wird mit wp_insert_post() geschrieben. Hier noch der Code-Auszug davon, wie ich das Thumbnail erstelle und setze:
    $wp_filetype = wp_check_filetype(basename($flyer), null );
    $wp_upload_dir = wp_upload_dir();
    $attachment = array(
    'guid' => $wp_upload_dir['url'] . '/' . basename( $flyer ),
    'post_mime_type' => $wp_filetype['type'],
    'post_title' => preg_replace( '/\.[^.]+$/', '', basename( $flyer ) ),
    'post_content' => '',
    'post_status' => 'inherit'
     );
    $bild_id = wp_insert_attachment( $attachment, $flyer, $postId );
    update_post_meta($postId, '_thumbnail_id', $bild_id );


    Da weiss ich nicht genau ob es tatsächlich korrekt ist, funktionieren tut es aber. Wäre übrigens toll, wenn es cropped und nicht verzogen ist dann.

    Und danke :cool:
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden