2016-06-02 5 views
-1

Ich versuche, eine Abfrage zu schreiben, die den neuesten Beitrag meines Blogs anzeigen wird, um dann als ein Shortcode aufzurufen, aber ich bin in einigen Syntaxfehlern gelaufen.Abfrage, um den neuesten Post im Shortcode anzuzeigen

Code:

function newest_post_query() { 
    $the_query = new WP_Query('posts_per_page=1'); 
    while ($the_query -> have_posts()) : $the_query -> the_post(); 
    echo '<a href="<?php the_permalink() ?>"><?php the_title(); ?></a>'; 
    wp_reset_postdata(); 
} 
add_shortcode('newest_post', 'newest_post_query'); 

Ich werde die Ausgabe Markup bearbeiten, wenn ich die Abfrage zum Laufen zu bringen. Jede Hilfe würde wirklich geschätzt werden!

+0

Was sind die Syntaxfehler? – zanderwar

+0

'Parse-Fehler: Syntaxfehler, unerwarteter '}' in /home/ourcore/public_html/wp-content/themes/portfolio/functions.php in Zeile 108' (Zeile 5 im Snippet). Ansonsten bin ich mir nicht sicher, ob die Abfrage funktioniert. –

+0

Dieser Fehler hat nichts mit der Abfrage zu tun, was ist Zeile 108 von functions.php? – zanderwar

Antwort

1

Sie starten eine while Anweisung, aber nie beenden. Sie haben auch einige Syntaxprobleme in Ihrem Link-Tag. Schließlich nimmt WP_Query ein Array von Argumenten, keine Zeichenfolge:

function newest_post_query() { 
    $the_query = new WP_Query(array('posts_per_page' => 1,)); 
    while ($the_query -> have_posts()) : $the_query -> the_post(); 
     echo '<a href="' . get_the_permalink() . '">' . get_the_title() . '</a>'; 
    endwhile; // This was missing 
    wp_reset_postdata(); 
} 
add_shortcode('newest_post', 'newest_post_query'); 
+0

Vielen Dank! Das macht Sinn. Ich bemerkte, dass die While-Schleife geöffnet war, nachdem ich sie hier gepostet habe. Dies funktioniert wie erwartet, aber der Echo-Inhalt wird nicht dort eingefügt, wo ich den Shortcode auf meiner Seite anrufe. Weißt du, warum das so sein könnte? –

+0

Es war, weil der neueste Post-Inhalt zurückgegeben werden musste, nicht echo. Aktualisiert und funktioniert. Danke noch einmal! –

Verwandte Themen