go41

Liste aller Posts alphabetisch und Paged

von Joern am 16. Jul. 2008 | Keine Kommentare

Um eine Liste aller Beiträge (WordPress) in alphabetischer Reihenfolge zu bekommen, kann man ja einfach &orderby=title&order=ASC einfügen.

Wenn man nun aber sehr viele Beiträge hat, wird die Liste sehr lang und es wäre schön, wenn man einen Seitenumbruch einfügen könnte.

Mit den Plugins Dagon Design Sitemap Generator oder
WP-SNAP! geht das auflisten zwar gut, nur hat man viele Seiten mit demselben Titel und verschiedenen Links dazu. Das mag Google schonmal garnicht (duplicate title tags).

Auf einem meiner Blogs habe ich mir nun selbst was gebaut und es funktioniert prima.

Man macht eine Vorlage für eine neue Seite, da muss oben drin stehen „Template Name: listposts“ wie unten im Code zu sehen.

Dazu könnte man auch die page.php nehmen oben die 5 Zeilen für ein Template einfügen und alles was bei mir von archiv bis end archiv geht unter das endif; der neuen Vorlage kopieren.

Nun nennt man die Datei z.B. listpost.php und legt sie im Verzeichnis des Themes ab.

Unter Seite schreiben macht man eine neue Seite mit beliebigem Namen (bei mir Sitemap A-Z) und wählt als Seitenvorlage die „listposts“ – diese sollte unter Vorlagen zu finden sein.

Inhalt braucht man keinen, also veröffentlichen und auf der eigenen Seite anschauen, ob’s klappt.

Hier meine listpost.php komplett: (ich hoffe der Code kommt als Code…)


<?php
/*
Template Name: listposts
*/
?>
<?php get_header(); ?>
<!--page listposts -->
<div id="content">
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<div class="post">
<h2><a href="<?php the_permalink(); if ($paged != 1 && $paged) { echo("page/$paged/"); } ?>" rel="bookmark" title="<?php the_title(); if ($paged != 1 && $paged) { echo(" Page $paged"); } ?>"><?php the_title(); if ($paged != 1 && $paged) { echo(" Page $paged"); } ?></a></h2>
<div class="entry">
<?php the_content(); ?>
</div>
</div>
<?php endwhile; ?>
<?php else : ?>
<?php endif; ?>
<!-- archiv paged and sorted, not in the loop, the $limit = 90 you can change to the number of posts you want to see -->
<div class="post">
<?php $limit = 90;
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts('showposts=' . $limit . '&paged=' . $paged . '&orderby=title&order=ASC');
$wp_query->is_archive = true; $wp_query->is_home = false; ?>
<div id="listposts">
<ul class="listcolumn">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<li><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; else: ?>
<?php endif; ?>
</ul>
</div>
<div class="navigation">
<div class="alignleft"><?php previous_posts_link(' previous page') ?></div>
<div class="alignright"><?php next_posts_link('next page ') ?></div>
</div>
</div>
<!--end archiv-->
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Hoffe jemandem geholfen zu haben…

Bonsoir, Il n'y a pas trente six solutions pour votre problème Jacqueline. Il faut investir. Sans vouloir faire de publicité, prohibée sur ce forum, je ne peux que vous conseillez d'aller sur notre boutique Compta Am 13. November 1990 ging die Webseite von Softwareentwickler Tim Berners-Lee online, die bis heute als offiziell erster Blog gilt. Berners-Lee nutzte diesen zum Informationsaustausch zwischen Wissenschaftlern vom europäischen Kernforschungszentrum bei Genf, wo er zu Das Robert-Koch-Insut schätzt, dass jährlich ca. 50.000 davon betroffen sind, dass ein Elternteil an Krebs erkrankt. Diese Zahl bezieht sich auf Neuerkrankungen. Liste des prénoms es - Vous trouverez ci-dessous une extensive des noms et prénoms es ou musulmans, avec la traduction de leur signification en français. Tags: liste, prénoms, arabes, Werbetrennung -kennzeichnung. Werbung muss als solche leicht erkennbar von redaktionellen Inhalten getrennt sein (Trennungssatz). Im Rfunk muss sie von den redaktionellen Inhalten durch optische oder akustische Mittel abgesetzt sein.

Autor:

Du findest mich auch auf Twitter und Facebook!

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.


Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.