Ihr bewährter Begleiter.
Viele Nutzer schätzen die vertraute Umgebung des Classic-Editors, die eine einfache und schnelle Bearbeitung ermöglicht.
Mehr Funktionen, mehr Möglichkeiten.
Der Advanced Editor erweitert den Funktionsumfang des Classic-Editors und ermöglicht es, Inhalte noch effektiver zu bearbeiten.
Der Classic-Editor für alle.
Der Classic-Editor zeichnet sich durch Stabilität und Zuverlässigkeit aus, was für professionellen Anwender von Bedeutung ist.
Der Advanced Editor für kreative Köpfe.
Mit dem Advanced Editor können Designer und
Content Creatoren kreative Ideen umsetzten.
Es geht darum, die durchschnittliche Lesedauer für Artikel automatisch anzuzeigen, indem die Lesezeit des Textes ermittelt wird. Die Lesedauer bezieht sich nur auf den tatsächlichen Text und sollte nicht die Zeit für Codes oder Bilder mit einberechnen. Ein sehr effektiver Code hierfür stammt von der Website Kulturbanause, hier mitsamt, dass Codes innerhalb von <pre>
-Tags nicht in die berechnete Lesezeit einfließen.
Wie berechnet man die Lesedauer? Das PHP frei nach Kulturbanause im Titel Geschätzte Lesezeit von Beiträgen in WordPress anzeigen. Hier dann mit der Erweiterung, um die Inhalte (bspw. von Codes) im <pre>
-Tag herauszurechnen und somit nicht in die Lesedauer mit einfließen.
Themes functions.php
/* Lesezeit anzeigen */
function kb_readingTime($post = null, $wpm = 275) {
// Inhalt auslesen und bereinigen
$content = get_post_field('post_content', $post);
$content = strip_pre_tags($content); // <-- NEU !!
$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 so %s Min. '), $reading_time);
}
// NEU --> die Funktion zum pre-Tag
function strip_pre_tags($content) {
$regex = '/<pre[^>]*>([\s\S]*?)<\/pre[^>]*>/m';
return preg_replace($regex, '', $content);
}
<pre>-Tags Inhalte herausrechnen
- Die Funktion zum Entfernen des
<pre>
-Tags aus dem Inhalt ist unter https://www.phpliveregex.com/p/G7u#tab-preg-replace zu finden. - Die Reihenfolge des Codes, wie oben angegeben, ist korrekt. Wenn die Reihenfolge anders ist, können die
<pre>
-Tags nicht entfernt werden, da sie bereits in der vorherigen Zeile entfernt wurden. Konkret bedeutet das$content = strip_pre_tags($content);
. Wenn dies unterhalb eingefügt wird, funktioniert das Beispiel daher nicht wie erwartet.
// Inhalt auslesen und bereinigen, so nicht!!!$content = get_post_field('post_content', $post); $content = strip_tags(strip_shortcodes($content)); $content = strip_pre_tags($content); // <-- NEU !!
Der Code zur Ausgabe
Nach Kulturbanause nochmal der Code zur Ausgabe. Das ist hier des Beispiels der content.php
in den Meta integriert.
<?php echo kb_readingTime(); ?>
Danke an Kulturbanause und andere WP-Freunde.
Der Beitrag wurde mit fachlicher Unterstützung erstellt.
Aktualisiert im Jahr 2024 April