Blog

Lesen Sie die letzten Artikel

WordPress: Anzahl der Aufrufe eines Artikels anzeigen (ohne Plugin)

Um die Anzahl der Aufrufe (Views), eines Artikels zu erfassen und anzuzeigen benötigt man nicht unbedingt ein Plugin, sondern man kann es ganz einfach auch mit WordPress-Internen Mitteln lösen.

Diese zusätzliche Funktion kann man ganz einfach in WordPress implementieren, in dem man Seitenaufrufe einfach in ein „Custom Fields“ speichert.

Die gespeicherten Seitenaufrufe (Views) kann man dann zum Beispiel unterhalb des jeweiligen Artikels ausgeben, oder man verwendet die gespeicherte Anzahl der Seitenaufrufe, um die beliebtestens Beiträge auszugeben.

Code für die Implementierung

Nachfolgenden Code ganz einfach in die jeweilige functions.php des Themes einbauen. Der Code ist mit Kommentaren versehen, damit genau nachvollzogen werden kann, was wo und wie passiert:

// Klasse Post_Views definieren
class Post_Views
{
// Konstante mit dem Schlüssel des Custom Fields 'post_views_count'
const KEY = 'post_views_count';
// Private Methode zum Ermitteln der Seitenaufrufe für den jeweiligen Artikel ($post_id) via 'get_post_meta'
private static function get_post_views_count($post_id)
{
return get_post_meta($post_id, self::KEY, true);
}
// Methode zum Abrufen der Seitenaufrufe
// Wenn noch keine Seitenaufrufe für den gegebenen Artikel vorhanden sind, dann wird $count eine 1 zugewiesen
public static function get_post_views($post_id)
{
$count = self::get_post_views_count($post_id);
$count = $count === '' ? 1 : $count;
return sprintf(_n('%d Aufruf', '%d Aufrufe', $count), $count);
}
// Diese Methode dient zum Inkrementieren und Speichern der Seitenaufrufe
public static function increment_post_views($post_id)
{
$count = self::get_post_views_count($post_id);
// Falls noch keine Seitenaufrufe gespeichert wurden, wird ein neues Custom Field angelegt und eine 1 für die Seitenaufrufe gespeichert
if($count === '')
{
delete_post_meta($post_id, self::KEY);
add_post_meta($post_id, self::KEY, '1');
} else { // Andernfalls wird die Anzahl der Seitenaufrufe einfach um 1 erhöht
$count++;
update_post_meta($post_id, self::KEY, $count);
}
}
}

Speichern der Seitenaufrufe

Um die Anzahl der Seitenaufrufe nun speichern zu können, müssen Sie im WordPress-Loop folgenden Code einbauen:

Post_Views::increment_post_views(get_the_ID());

Ausgabe der Seitenaufrufe

Um die Anzahl der Seitenaufrufe nun an einer beliebigen Stelle innerhalb des WordPress-Loops auszugeben, ist folgende Zeile Code notwendig:

echo Post_Views::get_post_views(get_the_ID());

Unser Fazit

Wenn man wirklich nur die Anzahl der Seitenaufrufe speichern will, reicht diese Methode vollkommen aus. Es muss kein unnötiges Plugin installiert werden, welches vielleicht irgendwann nicht mehr kompatibel ist oder noch zusätzliche nicht benötigte Funktionen mit sich bringt.

Probiert es doch selbst mal aus!

Viel Spaß damit!

Peter Gierak arbeitet als Teamleiter IT-Entwicklung bei Staudigl-Druck GmbH & Co. KG in Donauwörth. Nebenberuflich erstellt er mit seiner MEDUO Medienagentur Webseiten für kleinere Kunden.
  • 3897 Aufrufe

2 Kommentare

  • JWHBerlin

    17. Oktober 2017 um 23:07

    Vielen Dank für diesen schönen Tipp, der mir sehr weiterhilft. Für die Anzeige des Artikels mit den meisten „post_views“ in dem Custom-Field: Was müsste ich dafür tun, um ein Widget dazu zu erhalten?

Hinterlassen Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Sie können folgende HTML Tags and Attribute verwenden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>