WordPress fehlt eine Funktion namens wp_list_posts(), die logisch zur robusten und nützlichen Funktion wp_list_pages() passen würde. Sie können sie jedoch simulieren, indem Sie die Funktion get_posts() verwenden und Ihre eigene Schleife durch die Ergebnisse laufen lassen.
Die Parameter für get_posts() unten sind nur Beispiele, ersetzen Sie sie durch Ihre Bedürfnisse.
<ul>
<?php
$lastposts = get_posts('numberposts=5&orderby=rand&cat=-52');
foreach($lastposts as $post) :
setup_postdata($post); ?>
<li<?php if ( $post->ID == $wp_query->post->ID ) { echo ' class="current"'; } else {} ?>>
<a href="<?php the_permalink() ?>"><?php the_title(); ?></a>
</li>
<?php endforeach; ?>
</ul>
wp_list_pages() hat auch die Funktion, dem Listenelement eine Klassenbezeichnung "current_page_item" hinzuzufügen, wenn diese Seite die aktive ist. Beachten Sie das öffnende Listentag oben, das diese Funktionalität nachbildet, indem es prüft, ob die ID aus der aktuellen Abfrage mit der ID aus der aktuellen Iteration der Schleife übereinstimmt.
Ich erhielt eine Fehlermeldung, als ich diesen Code in eine meiner Vorlagen einfügte.
Ersetzen
{ echo " class="current""; }mit
{ echo ' class="current"'; }hat das Problem behoben.
Ja, ich habe diesen kleinen Syntaxfehler ebenfalls bemerkt.
Genau das, was ich für eine Website brauche, an der ich gerade arbeite.
Danke!
Und danke Martin, dass du mir Zeit erspart hast, nach dem Grund zu suchen, warum es zuerst nicht funktionierte :P
Danke!!! Nach tagelangem Suchen diesen Code gefunden!
Vielen Dank!!! Lebensrettender Schnipsel!
Vielen Dank!!! hat mich gerettet!!
Danke dafür! Ich frage mich, wie ich das ändern kann, damit nur die neuesten Beiträge einer bestimmten Kategorie aufgelistet werden.
Danke!
Wenn ich eine Liste mit dieser Technik auf meiner Homepage anzeige, werden auch der Fotobetrachter und der AddThis-Plugin-Inhalt aus einem Beitrag in der Liste angezeigt. Wie verhindere ich dieses Verhalten? Ich möchte nur den Titel anzeigen...
Genau das habe ich gesucht! Danke für das Teilen!
Sehr nützlicher Beitrag. Danke. Ich nutze ihn jetzt auf mehreren Websites.
JA! JA! JA!!!! Danke nochmals, Herr Coyier! Der Code hat einwandfrei funktioniert!
Danke für diese Information, ich habe tatsächlich nach diesem Code-Schnipsel für mein Theme gesucht. Ich werde das testen.
Danke fürs Teilen. Wie wendet man das auf eine Liste von Archiven an?
Ich benutze dies
<?php wp_get_archives(); ?>
in der sidebar.php. Aber dieser Codex enthält bereits die li-Tags. Wie bekomme ich also das class="current" da hinein? Danke für jede Hilfe.
Hallo!
Danke für diesen Beitrag, aber ich habe ein Problem damit. Ich bekomme die Links nicht zum Laufen! Es scheint, als würde get_permatlink() nicht das tun, was es soll.
Ich möchte ein Menü erstellen, das alle Beiträge auflistet, dafür versuche ich diesen Code zu verwenden.
Hallo Leute!
Wisst ihr, wie man den aktuellen Beitrag immer als ersten einstellt? Ich erstelle eine Enzyklopädie-Website und die Beiträge werden in der Reihenfolge des Inhalts aufgelistet, daher möchte ich, dass der erste Beitrag immer zuerst hervorgehoben wird, wenn die Seite geladen wird. Irgendwelche Vorschläge?
Hallo Dmitry...
Ich verstehe deine Frage nicht wirklich, aber wenn du davon sprichst, dass der neueste Beitrag zuerst auf der Archivseite angezeigt werden soll, dann ändere einfach im obigen Code
Beachte, dass ich rand zu date geändert habe.
Ich hoffe, das hilft
Danke fürs Teilen dieses nützlichen Tricks... Ich habe tatsächlich nach einer Möglichkeit gesucht, die Liste all meiner Beiträge auf einer Seite als Archiv zu erhalten. Ich habe sogar unwissentlich wp-list-posts() ausprobiert, aber Fehler bekommen, aber dein Code funktioniert perfekt und ich kann ihn nach meinen eigenen Wünschen anpassen.
Danke
Hallo,
Danke für deinen Schnipsel!!! Er funktioniert großartig, außer bei einer Sache.
Ich benutze ihn in meiner Vorlage, im Footer, um eine Liste der letzten 5 Beiträge anzuzeigen. Wenn man darauf klickt, wird der Beitrag angezeigt und die Klasse "current" angewendet (und entsprechend hervorgehoben), soweit so gut.
Aber auf meiner 404-Seite funktioniert es nicht.
Irgendwie stellt er fest, dass $post->ID mit $wp_query->post->ID übereinstimmt und weist einem Titel in meiner Beitragsliste die Klasse "current" zu.
Ich glaube, ich habe einen Teil des Rätsels verstanden. Ich habe die Permalinks-Struktur geändert. Mit der Standardstruktur funktioniert alles wie erwartet.
Aber wenn ich sie auf: /recent-projcts/%postname%/ ändere, funktioniert es nicht mehr...
Leider reichen meine PHP-Kenntnisse nicht aus, um das herauszufinden...
Jeder Vorschlag ist mehr als willkommen!
Erik
Diese Schleife in meinem Menü auf der Homepage aktiviert den letzten Beitrag aus der Produkt-Schleife.
Frage mich, ob es möglich ist, dass dies mit dem http://www.deluxeblogtips.com/2010/05/how-to-ajaxify-wordpress-theme.html Ajax-Lade-Stil-Post-Vorlage funktioniert? Mein Kunde möchte beide Funktionalitäten, ich kann das auf einzelnen Beitragsseiten zum Laufen bringen, aber wenn eine neue Seite geladen wird, wird die aktuelle Klasse nicht beeinflusst! Hilfe!
Deine Website ist in einem Wort fantastisch. Aber wenn du Screenshots mit deinen Codes bereitstellst, können wir die Ergebnisse sehen, was passiert. Es gibt viele Leute, die viele CSS-, PHP-, HTML-bezogene Wörter nicht kennen. Bitte behalte das im Hinterkopf, was für mich und Leute wie mich hilfreich sein wird.
Ähm, genau das habe ich gesucht.
Danke für den nützlichen Code.
Das war sehr hilfreich.
Ein Trick für die neueste WordPress-Version...
Danke für den Schnipsel und macht weiter so!
Sehr nützlicher Schnipsel, vielen Dank!
Aber ich habe eine Frage: Ist es möglich, diese Abfrage kategorienunabhängig zu machen?
Was ich meine: Ich habe mehrere Kategorien (z.B. 10) und für jeden einzelnen Beitrag in jeder verschiedenen Kategorie möchte ich diese Abfrage verwenden. Und ich möchte keine 10 Abfragen erstellen, sondern nur eine, die clever genug ist, um Beiträge (und die aktuelle markieren!) nur aus der Kategorie anzuzeigen, zu der der Beitrag gehört.
Ich bin sicher, dass es möglich ist, aber ich habe keine Ahnung, wie ich es machen soll. Danke!
Hallo,
Ich suche ein WordPress-Plugin, das mir hilft, ein Schlüsselwort in ein Bild umzuwandeln. Zum Beispiel: Ich habe das Schlüsselwort "Rapidshare" in vielen Beiträgen, ich möchte, dass das Schlüsselwort "Rapidshare" als Rapidshare-Logo-Bild angezeigt wird. Bitte helft mir...
Vielen Dank !
Prost. Hat super funktioniert! Habe schon eine Weile danach gesucht.
Schnell und sauber!
Ich habe den Codex gelesen, aber immer noch nicht verstanden, was setup_postdata() bedeutet! Kann mir jemand das bitte erklären?
So habe ich es verwendet.
Danke!
Danke. Dieser Code funktioniert auch Jahre später noch super!
Danke für diesen tollen Beitrag! Er hat mir viel Zeit gespart.
Es gab ein Problem, Elemente nach deiner Schleife wurden nicht angezeigt (mit ACF), um die Schleife zu reparieren, musste ich das am Ende hinzufügen
Ansonsten toller Beitrag, danke nochmals :D
Entschuldigung für mein mangelndes Wissen. Wie füge ich eine Liste von Unterseiten in den Text einer anderen Seite ein? Gibt es dafür einen Shortcode?