Hogyan adjunk hozzá becsült olvasási időt a WordPress bejegyzésekhez és oldalakhoz plugin nélkül?

 
Hogyan adjunk hozzá becsült olvasási időt a WordPress bejegyzésekhez és oldalakhoz plugin nélkül?

Olvasási idő.

az olvasási idő jelentése növeli az oldalon töltött időt?

Bizonyos esetekben ennek az információnak a hozzáadása növelheti a látogatók webhelyen töltött idejét.

Különböző elemzések és tapasztalatok alapján, legalábbis így mondják, úgy tűnik, hogy az emberek nagyobb valószínűséggel látogatnak meg egy cikket, ha előre tudják, hogy körülbelül mennyi idő alatt fogják elolvasni.

milyen gyorsan olvasunk?

Különböző szövegek olvasásakor néhány adat vagy közelítés jelenik meg, amelyek ismétlődnek, például, hogy egy felnőtt átlagos olvasási sebessége 240 szó percenként 60%-os szövegértési arány mellett, azonban az olvasási sebesség 25%-kal csökken, ha papír helyett számítógép képernyőjén olvasunk.

Ezért az itt bemutatott példában a sebességet 200 szó/percben határozzuk meg.

Becsült olvasási idő hozzáadása bővítmény nélkül

Ez az információ hozzáadható egy pluginnal vagy egy kis kóddal. Mivel itt az a dogma, hogy kerüljük egy új plugin telepítését, ami csak egy egyszerű dologra jó (amellett, hogy a legtöbbjük eléggé elhagyatott), elmagyarázzuk, hogyan lehet ezt egy snippettel megtenni.

Ha valami vizuálisabb és egyszerűbb dolgot szeretnél, például egy előrehaladási sávot az oldal tetején, ami olvasás közben töltődik, itt megtalálod, hogyan adhatod hozzá plugin nélkül.

Azért választottam és teszteltem ezt a kódot, mert ez a legegyszerűbb, mivel a képeket figyelembe vevők olyan paramétert mérnek, amely meglehetősen relatív. Ez függ a képek típusától, méretétől, a bennük lévő elemek és szövegek mennyiségétől stb. és nem finomítja túlságosan a teljes számot.

Nem sok blog adja hozzá ezt a becslést a képekkel együtt, de mivel ebben a blogban rengeteg van belőlük, és a legtöbbjük vignetta, természetüknél fogva kevés szöveggel, úgy döntöttem, hogy 10 másodpercnél hagyom, és ez még mindig soknak tűnik számomra.

AMedium például 265 szót mér percenként, a képekkel való kiigazítással, amely az első képnél 12 másodperc, a másodiknál 11 másodperc, és minden további képnél 1 másodperccel kevesebb. A tizedik kép után minden további kép három másodpercet számít. Forrás: Az újságírók a következő adatokat veszik figyelembe: "A képsorok és a képsorok száma a következő: A képsorok és a képsorok száma a következőképpen alakul:

A kínai, japán és koreai kiadványok esetében a Medium a karakterek számát percenként 500-ra állítja be, a képekre vonatkozó fenti beállítással megegyezően.

Kód, a szöveg és a képek figyelembevételével számítja ki

Ez a másik kód figyelembe veszi a képek olvasási idejét, amely 10 másodpercre van beállítva, de lehet, hogy ez túl hosszú néhány kép esetében, ezért 6 másodpercre csökkentettem. Mindig lehet javítani a másodpercek kiszámításával vagy a képek magasságától vagy más paraméterektől függő összetettebb változók hozzáadásával, hogy megpróbáljuk kicsit finomítani az adatokat (bátorítok mindenkit, aki ért hozzá, hogy tegye meg).

/*Az olvasási idő */

function wp_reading_time() {

// GET WORDPRESS POST CONTENT
$content = get_post_field( 'post_content', $post->ID );

// COUNT NUMBER OF WORDS
$word_count = str_word_count( strip_tags( $content ) );

// KÉPEK SZÁMÁNAK MEGszámlálása
$image_count = substr_count( $content, '<img' );

// SZÖVEGOLVASÁSI IDŐ - 200 SZÓ per perc
$reading_time = $word_count / 200;

// KÉPOLVOLVASÁSI IDŐ - 10 SZEKUNDUM KÉPenként
$image_time = ( $image_count * 10 ) / 60;

// SZÖVEG- ÉS KÉPOLVASÁSI IDŐ TELJESÍTÉSE
$total_time = round( $reading_time $image_time );

// MEGHATÁROZZA, HOGY EGYSZERES VAGY PLURÁLIS
if ( $total_time == 1 ) { $minute = " perc"; }
else { $minute = " perc"; }

return $total_time . $minute;

}

*Ez a kód, bár a GeneratePressben működik, a error_log egy visszatérő hibát rögzít ebben a sorban:

// GET WORDPRESS POST CONTENT
$content = get_post_field( 'post_content', $post->ID );

A hiba ez:

ID" tulajdonság kiolvasásának kísérlete a null ...  /path és a functions.php sorszáma
PHP Warning: Undefined variable $post in ...    /path és a functions.php azonos sorszámú sorában

Még mindig próbálom kitalálni, hogyan lehet ezt kijavítani.

A kód hozzáadásának több módja van: a functions.php letöltése és helyi szerkesztése, közvetlenül a WordPress sablonszerkesztőből (Appearance/Theme Editor) vagy szerkesztése, szintén "menet közben", a Cpanel fájlkezelőből vagy hasonlóból.

Ha nem érzed magad elég bátornak ahhoz, hogy kézzel hozzáadd ezt a snippetet a sablonod functions.php fájljához, akkor választhatod a Code Snippets plugin segítségével is, amely arra is szolgál, hogy a funkciók gyűjteményét jobban rendszerezve, egy helyen tartsd.

Így gyorsan és egyszerűen visszaállíthatod a változtatásokat, ha valami elromlik, vagy a kód már nem kompatibilis a PHP, egy bővítmény vagy a WordPress mag frissítésével

Ezután csak add hozzá ezt a kódot, amely a blogodon a perceket fogja festeni, ahol az áll, hogy "becsült olvasási idő", oda azt írhatod, amit a legjobbnak gondolsz.

<?php echo "Olvasási idő: " . wp_reading_time(); ?>

A kódot bárhova beillesztheted, de ha úgy döntesz, hogy a post meta fájlba teszed, ahol a sablonodban megjelenik a poszt szerzője, a megjelenés dátuma, a hozzászólások száma, stb. akkor a content.php vagy single.php fájl (az egyes sablonoktól függően) vagy a page.php fájl post meta ciklusába kell beillesztened a kódot, ha az oldalakra is szeretnéd beilleszteni.

Miután ellenőrizted, hogy működik-e, csak igazítsd hozzá a formázást, adj hozzá egy ikont vagy bármit. Itt így néz ki:

Hogyan adjunk hozzá becsült olvasási időt a WordPress bejegyzésekhez és oldalakhoz plugin nélkül?

Úgy döntöttem, hogy az összes bejegyzéshez az Elementor PRO-val létrehozott sablonban az Elementor PRO-val létrehozott gyermek témában az Ad Inserterrel létrehozott rövidkóddal adom hozzá.

Cómo añadir el tiempo de lectura estimado en los post y páginas de WordPress
Hogyan adjunk hozzá becsült olvasási időt a WordPress bejegyzésekhez és oldalakhoz plugin nélkül?

Bár rendetlennek hangzik, nagyon tiszta lehetőség, hogy a WordPressben egyetlen sor kódhoz sem kell hozzányúlni, és bármikor gyorsan és komplikációk nélkül módosítható.

Kód, csak a szöveg mérésével számol

Itt van egy másik alternatívfunkció, amely csak szöveget számol, és perceket és másodperceket mutat, ezt használom most, és nem ad vissza semmilyen PHP hibát.

 * Becsüljük meg, mennyi idő alatt olvasható el egy bejegyzés a WordPressben */

function wpr_estimate_read_time() {

 $input = get_post();

 $ppm = 250; // kiválaszthatjuk a kívánt PPM-et (például 200-300)
 $words = str_word_count( strip_tags( $input->post_content ) ) ) );
 $minutes = floor( $words / $ppm );
 $seconds = floor( ( $words % $ppm ) / ( $ppm / 60 ) ) ) );
  
 if ( 1 <= $minutes ) {
 $estimated_time = $minutes . ' perc' . ( ( ( 1 === $minutes ? '' : 's');
 if ( $seconds > 0 ) {
 $estimated_time .= ', ' . $seconds . ' second' . ( 1 === $seconds ? '' : 's' );
 }
 } else {
 $estimated_time = $seconds . ' second' . ( 1 === $seconds ? '' : 's' );
 }

 return $estimated_time;
}

Bárhová hozzáadhatjuk:

<?php echo "Beolvasás: " . wpr_estimate_time_read(); ?>

Frissítés 2023. március 21

Extra, szószámláló plugin nélkül

Egyszerű és gyors módja annak, hogy hozzáadjuk az egyes hozzászólásokban található szavak számát. A cím alá vagy a meta alá, vagy ahova akarod, és némi CSS-szel formázhatod.

1-Készíts rövidkódot a Code Snippet segítségével.

add_shortcode('counter', 'word_count');

2-A függvény hozzárendelése.

function word_count() {
$content = get_post_field( 'post_content', get_the_ID());
$word_count = str_word_count( strip_tags( $content ) );
return $word_count;
}
echo ' ' , word_count();

Végül, ugyanezzel a fent leírt módszerrel, hozzáadod a "számláló" rövidkódot a sablonhoz az Elementor, GeneratePress, vagy bármi más segítségével.

És ez az eredmény:

Contador de palabras sin plugin para WordPress

Suscríbete por email para recibir las viñetas y los artículos completos y sin publicidad

Artículos relacionados

Este blog se aloja en LucusHost

LucusHost, el mejor hosting