Mit Shortcode Artikel inkl. Thumbnail in Seite einbinden

  • Hallo,

    ich würde gernen einzelne Artikel per Shortcode in Seiten einbinden, bestehend aus Überschrift, Text und Thumbnail.

    Im Moment sieht meine Funktion wie folgt aus. Überschrift und Text kommen auch an, das Thumbnail leider nicht.

    Kann jemand helfen?

    function personen_shortcode($atts) {
    $a = shortcode_atts( array('id' => ''), $atts );
    $article = get_post($a['id']);
    $content = $article->post_content;
    $title = $article->post_title;
    $thumbnail = $article->post_thumbnail;
    return '<div class="person">'.$thumbnail.'<h3>'.$title.'</h3>'.'<p>'.$content.'</p>'.'</div>';
    }
    add_shortcode( 'personen', 'personen_shortcode' );

    • 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

  • Schau dir mal diese Seite an, ein solcher Shortcode steht im Prinzip bereits zur Verfügung: http://en.support.wordpress.com/display-posts-shortcode/


    http://en.support.wordpress.com/display-posts-shortcode/Alternativ könntest du versuchen

    Code
    $thumbnail     =    $article->post_thumbnail;

    durch

    Code
    $thumbnail     =    get_the_post_thumbnail($article);

    zu ersetzen... habs aber nicht getestet...

    Einmal editiert, zuletzt von egado (30. November 2013 um 18:56)

  • Merci für die Hilfe. So hat es jetzt geklappt ...

    function personen_shortcode($atts) {
    $a = shortcode_atts( array('id' => ''), $atts );
    $article = get_post($a['id']);
    $content = $article->post_content;
    $title = $article->post_title;
    $thumbnail = get_the_post_thumbnail($a['id']);
    return '<div class="person">'.$thumbnail.'<h3>'.$title.'</h3>'.'<p>'.$content.'</p>'.'</div>';
    }
    add_shortcode( 'personen', 'personen_shortcode' );

Jetzt mitmachen!

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