Geschätzte Lesezeit von Beiträgen in WordPress anzeigen
Mit einer einfachen PHP-Funktion für WordPress kann die Lesezeit eines Textes anhand der Textlänge und der Lesegeschwindigkeit berechnet werden.

Web-Inhalte werden oft in klar begrenzten Zeitfenstern gelesen. Beispielsweise endet eine Bahnfahrt in wenigen Minuten oder es muss Zeit bis zum Beginn eines Treffens überbrückt werden. Mit der Anzeige der erwarteten Lesezeit könnt ihr eine hilfreiche Komfortfunktion anbieten. Je nach Länge des Artikels und Zeitfenster können Personen dann entscheiden, ob der Artikel für später gemerkt oder direkt gelesen wird.
Schulungen von kulturbanause
Intensive Trainings mit hohem Praxisbezug.
Die Lesezeit eines Textes berechnen
Damit die durchschnittliche Lesezeit berechnet werden kann, sind lediglich zwei Variablen notwendig.
- Länge des Textes in Wörtern
- Lesegeschwindigkeit (Wörter pro Minute)
Die durchschnittliche Lesegeschwindigkeit ist unterschiedlich je nach Zielgruppe und Komplexität des Textes. Typisch sind Werte von ca. 300 Wörtern pro Minute. Wir verwenden in technischen Blog-Beiträgen meist einen Wert von 200 Wörtern pro Minuten um auszugleichen, dass Abschnitte doppelt gelesen werden und Code-Abschnitte oder erklärende Grafiken enthalten sind.
WordPress-Funktion für die Anzeige der Lesezeit
Die folgende Funktion definiert zu Beginn die Lesezeit (Wörter pro Minute) in der Variablen $wpm
. Anschließend liest sie den Inhalt eines WordPress-Beitrags aus und löscht überflüssige Bestandteile. Die Anzahl der Wörter wird berechnet und in die Variable $word_count
geschrieben.
Im zweiten Teil der Funktion wird die Anzahl der Wörter durch die Lesezeit geteilt. Im Ergebnis erhaltet ihr die erwartete Lesezeit.
<?php
function kb_readingTime( $post = null, $wpm = 200 ) {
// Inhalt auslesen und bereinigen
$content = get_post_field( 'post_content', $post );
$content = strip_tags( strip_shortcodes( $content ) );
// Anzahl der Wörter berechnen
$word_count = str_word_count( $content );
// Lesezeit berechnen
$reading_time = ceil( $word_count / $wpm );
return sprintf( esc_html__( 'Lesezeit ca. %s Min.'), $reading_time );
}
?>
Die Ausgabe erfolgt mit folgendem Code:
<?php echo kb_readingTime(); ?>
Feedback & Ergänzungen – 1 Kommentar
Kommentar zu dieser Seite
WordPress-Projekte mit kulturbanause
Wir wissen wovon wir reden. Wir setzen WordPress seit über 10 Jahren erfolgreich ein und realisieren maßgeschneiderte Websites auf Basis dieses großartigen CMS.
WordPress-Leistungsangebot →Schulungen von kulturbanause
Wir bieten Seminare und Workshops zu den Themen Konzept, Design und Development. Immer up-to-date, praxisnah, kurzweilig und mit dem notwendigen Blick über den Tellerrand.
Übersicht Schulungsthemen →
Wie würde denn der Code aussehen, wenn man die Anzahl der Wörter statt der Lesezeit ausgeben will?