WordPress’te Yazılara Okuma Süresi Nasıl Eklenir?

Furkan Zerman
Stingy Developer
Published in
2 min readDec 6, 2020

Medium gibi birçok web sitesinde yazıların okunmasının kaç dakika sürdüğünü belirten ifadeler vardır. Bu ifadeler genellikle yazının kelime sayısına yani uzunluğuna göre belirlenir. Biz de bu yazıda “WordPress’te yazılara okuma süresi etiketi nasıl eklenir?” sorusunun cevabını vereceğiz.

Photo by Nong Vang on Unsplash

WordPress’te yazılara okuma süresi etiketi nasıl eklenir?

Yukarıda da belirttiğimiz gibi bu etiket yazının kelime sayısına göre belirleniyor. Bu yüzden ilk olarak yazımızın içeriğini get_post_field() fonksiyonu yardımıyla alıyoruz. Aldığımız içeriği öncelik ile kelime sayımına uygun hale getirmek için strip_tags() fonksiyonu ile yazıdaki html etiketlerini kaldırıyoruz. Sonrasında etiketlerden arınan yazının str_word_count() fonksiyonu yardımıyla kelime sayısını elde ediyoruz.

Bu zamana kadar yaptığımız işlemleri kod hali ise şöyle;

$content = get_post_field(‘post_content’,$post->ID);$word_count = str_word_count(strip_tags($content));

Sonrasında elde ettiğimiz kelime sayısını bir dakikada okunan ortalama kelime sayısına bölmemiz gerekiyor. Medium bu sayıyı 200 olarak belirlemiş. Bizde Medium’u örnek alarak 200 olarak belirliyoruz. Kelime sayısını bir dakikada okunan ortalama kelime sayısına bölerek okuma süresini elde ettik. Ancak bu değer büyük ihtimalle ondalıklı çıkacağından bu değeri ceil() fonksiyonu ile en yakın tam sayıya yuvarlıyoruz. Yuvarladığımız bu değerin sonuna belirlediğimiz uygun bir yazı ile -“dakika okuma” gibi- bastırarak okuma süresi etiketini eklemeye hazır hale getiriyoruz.

Yazdığımız bu kodu bir fonksiyon haline getirdikten sonra bu hale geldi.

function reading_time(){$content = get_post_field(‘post_content’,$post->ID);$word_count = str_word_count(strip_tags($content));$reading_time = ceil($word_count/200);if($reading_time =< 1){$reading_time = 1;$timer = “ minute read”;}else{$timer = “ minutes read”;}return $reading_time . $timer;}

Şimdi bu fonksiyonu temamızın tamamında kullanabilir hale getirmek için functions.php dosyamızın içine eklememiz gerekiyor. functions.php dosyasına fonksiyonumuzu ekledikten sonra yazılarımızı yazdırdığımız döngünün içinde fonksiyonumuzu kullanacağız. Fonksiyonumuzu the_title() fonksiyonunu kullanır gibi echo reading_time(); şekline kullanarak okuma süresi etiketini yazılarımıza ekleyebiliriz.

Okuma süresi örneği

Bugsız günlerde görüşmek üzere…

--

--

Stingy Developer
Stingy Developer

Published in Stingy Developer

Articles and hot news about software development and engineering. You can find educational articles, tips about software development. Don’t wait, start to READ!!!

Furkan Zerman
Furkan Zerman

Written by Furkan Zerman

Web Developer, University Student at METU