Artikelanzahl ausgeben

Hier auf neontrauma.de wird euch an mehreren Stellen angezeigt, wie viele Beiträge es beispielsweise in einer Kategorie gibt oder wie viele Treffer eine Suchabfrage lieferte.
In diesem Tutorial erkläre ich euch, wie man diese verschiedenen Informationen über die Artikelanzahl ausgeben lässt.

Sidebar: Anzahl der Artikel in einer Kategorie

Wenn ihr eure Kategorien in der Sidebar über das entsprechende Widget auflisten lasst, das bei WordPress standardmäßig mitgeliefert wird, dann müsst ihr dort einfach das Häkchen bei “Zeige Artikel-Zähler” setzen. Das Gleiche gilt für das von dem Plugin My Category Order (das euch eine beliebige Anzeigereihenfolge der Kategorien ermöglicht) stammende Widget.

Sofern ihr auf Widgets verzichtet und die Kategorie-Anzeige via Code in einem eurer Templates steuert, also so:
<?php wp_list_categories(); ?>
… verwendet den entsprechenden Parameter show_count:
<?php wp_list_categories('show_count=1'); ?>
1 bedeutet, dass die Anzahl der Artikel angezeigt wird; 0 (der Standardwert) unterdrückt dies.

Kategorieseite: Anzahl der enthaltenen Artikel

Um auch auf der Übersichtsseite der jeweiligen Kategorie anzuzeigen, wie viele Artikel in ihr enthalten sind, schnappt euch eure category.php. Sofern ihr diese Seite noch nicht haben solltet, kopiert einfach die index.php und benennt sie um in category.php. Ab sofort ist für die Anzeige der Kategorien dieses Template zuständig.
Fügt zwischen der Seitenüberschrift und dem Loop Folgendes ein:
Die Kategorie <?php echo single_cat_title(); ?> enthält <?php $this_category = get_category($cat); echo $this_category->category_count." Artikel"; ?>
Hier wird auch gleich noch einmal der Name der betreffenden Kategorie mit ausgegeben.

Anzahl der Suchergebnisse

Auch hierfür verwenden wir wieder eine spezifische Templatedatei, die search.php. Solltet ihr in eurem Theme über diese noch nicht verfügen, legt sie analog zur oben beschriebenen Vorgehensweise an.
Zwischen Seitenüberschrift und Loop fügt ihr nun ein:
<?php $NumResults = $wp_query->found_posts; echo $NumResults; ?> Treffer für die Suche nach <?php the_search_query(); ?>.

Zusätzlich zu der Zahl der Suchergebnisse wird auch der Suchterm angezeigt.

Anzahl der Artikel eines Autors

Um auszugeben, wie viele Artikel ein Autor bereits verfasst hat, nehmen wir passenderweise die Datei author.php (sofern nicht vorhanden, siehe oben ;) ). Aufrufen könnt ihr diese Autorenseite übrigens über http://domain.de/author/autorenname (domain und autorenname müsst ihr natürlich an eure Seite anpassen :) ).

Zunächst müssen wir bestimmen, von welchem Autoren die Artikel gezählt werden sollen.
<?php
if(isset($_GET['author_name'])) :
$curauth = get_userdatabylogin($author_name);
else :
$curauth = get_userdata(intval($author));
endif;
?>

Jetzt erfolgt die Ausgabe:
<?php echo $curauth->display_name; ?> hat <?php the_author_posts(); ?> Artikel verfasst.

Sofern ihr diese Informationen nicht auf einer alleinstehenden Seite ausgeben wollt, sondern innerhalb des Loops (also zum Beispiel bei den Beitragsinformationen unterhalb eines Artikels), braucht ihr $curauth nicht. Hier wird der betreffende Autor automatisch durch den Loop des jeweiligen Artikels ausgewählt. Es reicht also:
<?php the_author(); ?> hat <?php the_author_posts(); ?> Artikel verfasst

Anzahl sämtlicher Artikel

Mit einer weiteren Prise PHP könnt ihr auch ausgeben, wie viele Postings euer Blog insgesamt enthält. Für den Fall, dass ihr diese Information nicht via Template anzeigen lassen wollt, sondern in einer über das Dashboard verwalteten statischen Seite, in einem Artikel oder Textwidget, benötigt ihr ein Plugin wie Exex-PHP, was die Ausführung von PHP dort erlaubt.
<?php
$count_posts = wp_count_posts( 'post' );
echo 'Mein Blog enthält ' . $count_posts->publish . ' Postings.';
?>:

Viel Spaß damit!

verwandte Beiträge

10 Gedanken zu “Artikelanzahl ausgeben

  1. Sieht in der Tat gut aus wenn man schon mehrere Beiträge hat und dem Besucher ein “Wow der war aber fleissig” rausrutscht.
    Gut auch, dass so einfache Sachen ohne Plugin gelöst werden können.

  2. Und wie genau kann ich ausgeben lassen “Wie viel Wörter” ein Artikel enthält?

    Also so zum Beispiel das im Frontend quasi jeder Leser unterhalb des Artikel sehen kann wie viele Wörter der jeweilige Artikel enthält?!

  3. Aha, werde ich mir mal anschauen.

    Könnte ich diese Funktion nicht auch in die functions.php meines aktuellen Theme einbauen? Weil ich will meine Plugin-Anzahl so gering wie möglich halten.

    Muss ich dann den Code aus dem Plugin einfach in die functions.php kopieren oder wie ?

  4. Sieht echt gut aus – kann man soetwas auch mit tags machen?
    Z.B. es sind “15″ Artikel für den Tag: “xyz” gefunden worden.

    Ich finde weder ein plugin noch sonstetwas das mir Anzeigt, welches Tag gerade benutzt wird.

  5. @ LexX Noel:
    mh, theoretisch sollte das funktionieren, hast du es schon ausprobiert?

    @ Silvia:
    Wenn du die Anzahl der Tags zu einem Artikel ausgeben magst, geht dies über $num_tags = wp_count_terms('post_tag');, wie ich gerade in einem Artikel von Frank Bültge gefunden habe.

    Für die Seite, auf der alle Artikel des jewieligen Tags aufgelistet werden, sieht diese Angabe so aus:
    Das Tag "<?php echo single_tag_title(); ?>" wird in <?php $NumResults = $wp_query->found_posts; echo $NumResults; ?> Posts verwendet.

  6. Hallo

    Kann man bei der Anzeige der Artikel auch einzelne Kategorien ausschliessen?

    Da komm ich einfach nicht weiter.

    LG Patrick

  7. Pingback: Tag 4: Plugins – Erweiterungen für deinen Blog | The Green Bird