Bir blog gönderisinde tahmini okuma süresi nasıl görüntülenir
Bir WordPress blogu çalıştırırsanız, ziyaretçilerinizi meşgul etmek ve tıklamadan yayınlarınızı okumaya teşvik etmek için farklı bir eklenti ve snippet bulmaya çalışabilirsiniz. Şu anda, ziyaretçiler genellikle bir bakışta sayfayı okuyarak mümkün olduğunca fazla bilgi almak istiyorlar. Bir gönderi için tahmini okuma süresi göstermek bunun için çok yararlıdır. Bu şekilde, ziyaretçiler ilginç konuları okuyarak bilgi almak için ne kadar zamana ihtiyaç duyduklarını bileceklerdir. Buna karşılık, bu da blog yazarlarını daha ilginç yayınlar yazmaya ve fazla zaman almayacak şekilde teşvik edecektir. Buna ek olarak, bir blog sahibi olarak, metriği kontrol ederseniz ve ziyaretçilerin farklı yayınlar için harcadığı süreyi karşılaştırırsanız en iyi yaklaşımı belirleyecek bir konumda olacaksınız.
Bazı eklentiler, elbette bu işlevi içerir, ancak bunu işleyen WordPress işlevinin kullanımı çok kolaydır. Bu nedenle, blogunuzu sadece bu amaçla diğer eklentilerle tıkamanıza gerek yoktur. Bu yöntemi kolayca anlamak için, değişiklikleri ücretsiz yirmi on altı WordPress temasına entegre ederek açıklayacağız.
İşleviyle başlayalım
if (! function_exists (‘content_esimated_reading_time’))) {
/**
Belirli bir $ içerik için okuma süresini tahmin eden işlev.
@Param String $ içerik okuma süresini hesaplamak için.
@Paramint $ wpm Dakika başına tahmini kelime okuyucu.
@retururns int $ okuma süresinin zaman tahminleri.
*/
Content_esimated_reading_time işlevi ($ content = ”, $ wpm = 200) {
$ clean_content = strip_shortcodes ($ content);
$ clean_content = strip_tags ($ clean_content);
$ word_count = str_word_count ($ clean_content); $ time = ceil ($ word_count/ $ wpm);
$ output = ”;
$ output. = ”. $ Time. ”. ‘ ‘;
$ output. = ”. ESC_ATTR __ (‘min okuma’, ‘yirmi altı’). ”;
$ output. = ”;
geri $ çıktı;
}
}
Bu işlev iki parametre alır – içerik ($ içerik) ve dakikada okuyucu ($ wpm) kelime tahminleri. İkinci parametre ortalama okuyucu için 200 olarak ayarlanmıştır, ancak diğer birkaç değere ayarlayabilirsiniz. İnternette bununla ilgili bazı yararlı bilgiler toplayabilirsiniz.
İşlevde, kelimelerin kendileri dışında içeriği başkalarından silmemiz gerekir. İlk olarak, kısa kodları ve etiketleri silmek için iki işlevi kullanacağız (Strip_shortCodes ve Strip_TAGS).
Bundan sonra, içerikte temizlenen kelimeleri hesaplamamız gerekir. Bu nedenle, içeriği $ Word_Count değişkeninde saklayacağız. Burada kullanılan kelimeleri hesaplama işlevi Str_word_Count’dur. Ortalama okuma süresini hesaplamak için, kelimenin sayısını sadece dakikada okunan kelimelerle bölmemiz gerekirken, burada kullanılan tavan işlevi sonuçları telafi etmektir.
Bu işlevin ikinci kısmı, yalnızca takip eden zaman ve metinle HTML yayınlamaktır. İşlevleri temanıza entegre etmek için, kullandığınız tema için function.php dosyasının sonuna ekleyin. Gördüğünüz gibi, okuma süresinin arkasındaki mantığın tamamı çok basit. Ancak, işlevi kendi başına hiçbir şey yapmayacaktır. Bu yüzden blog listenizde veya tek gönderisinizde görüntülenir, önce aramamız gerekir. Çağrı işlevleri
Bu işlevleri yerine getirebileceğiniz çeşitli yollar vardır. Bunlardan üçünü aşağıda tartışacağız.
1. Yankı
Genellikle, çoğu kullanıcı için en kolay yol, işlevi doğrudan ihtiyaç duydukları dosyadan aramaktır. Örneğin, tek bir gönderi görüntülemek için bir şablon olan Single.php dosyasında işlevi çağırmanız gerektiğini söyleyin. Bu, bu dosyayı açmanız gerektiği anlamına gelir ve daha sonra işlevi bir parametre olarak yayınlayarak işlevi yansıtacaktır:
Bu elbette bir döngü ve single.php dosyasındaki tüm yapılarınız varsa, ancak büyük olasılıkla bunu yapmayacaksınız. Yapılar örnekleri şöyle görülebilir:
2. Bir filtre kullanın
Modern temalar ve daha iyi kod bu modülleri farklı dosyalara ayırır. Bu nedenle, daha iyi bir yöntem bir filtre kullanmak ve filtre işlevleri ekleyerek içeriği geri yüklemektir. Filtrelerin nasıl ekleneceği konusu internette geniş çapta tartışılmıştır.
3. Daha fazla kontrol için mevcut işlevi değiştirin
Bu en iyi yaklaşım olabilir, çünkü çıktıyı konumlandırmak için daha fazla kontrole sahip olabilirsiniz. Yirmi on altı temada, her yazı için kategorileri ve etiketleri tek bir liste ve gönderide yazdırmaktan sorumlu bir işlev vardır. Bu, yirmi -sixteen_entry_taxonomies’in bir fonksiyonudur. Sizin için geriye kalan tek şey, onu kopyalamak ve işlevine eklemek ve son bölümü tahmini zaman okuma süresi için işlevimizle değiştirmek. Orijinal olmak. Şimdi, içindeki modifikasyonumuzla işlev, temanın her yerinde yürütülecek. Değiştirilen değişiklikler şöyle görünecek:
/**
* Üst temadaki varsayılan işlevi bir kenara bırakmanın işlevi
* Sonuna okuma süresi işlevini ekleyin
*/
İşlev yirmi altı_entry_taxonomies () {
$ categories_list = get_the_category_list (_x (‘,’, ‘Liste öğeleri arasında kullanılan, komadan sonra alan var.’, ‘TwentySixteen’));
if ($ categories_list && twentySixteen_categorized_blog ()) {
printf (‘ %1 $ s %2 $ s ‘,
_X (‘kategori’, ‘kategorinin adından önce kullanılır.’, ‘Yirmi altı’),
$ Category_dist
);
}
$ tags_list = get_the_tag_list (”, _x (‘,’, ‘Liste öğeleri arasında kullanılan, virgülden sonra alan var.’, ‘TwentySixteen’));
if ($ tag_list &&! Is_wp_error ($ tags_list)) {
printf (‘ %1 $ s %2 $ s ‘, _ x (‘etiket’, ‘Etiket adından önce kullanılır.’, ‘Yirmi altı’),
$ tag_list
);
}
/*Bu işlev için kodumuzun değiştirilmesi*/
content_esimated_reading_time (get_the_content ());
}
Bu şekilde, yer etiketi ve kategorisi ile bölümde okuma süresini göstereceğiz.
Fonksiyon dosyasındaki kod.
if (! function_exists (‘content_esimated_reading_time’))) {
/**
Belirli bir $ içerik için okuma süresini tahmin eden işlev.
@retururns int $ okuma süresinin zaman tahminleri.
*/
Content_esimated_reading_time işlevi ($ content = ”, $ wpm = 200) {
$ clean_content = strip_shortcodes ($ content);
$ clean_content = strip_tags ($ clean_content);
$ number_kata = str_kata_count ($ clean_konten);
$ Time = Ceil ($ word_count / $ wpm);
$ output = ”;
$ output. = ”. $ zaman. ”. ”;
$ output. = ”. ESC_ATTR __ (‘min okuma’, ‘yirmi altı’). ”;
$ output. = ”;
geri $ çıktı;
}
}
/**
* Üst temadaki varsayılan işlevi bir kenara bırakmanın işlevi
* Sonuna okuma süresi işlevini ekleyin
*/
İşlev yirmi altı_entry_taxonomies () {
$ categories_list = get_the_category_list (_x (‘,’, ‘listeleme öğeleri arasında kullanılır, koma sonrası alanlar vardır.’, ‘TwentySixteen’)); if ($ category_disa && yirmi -ssixteen_kategori_blog ()) {) {) {) {
printf (‘ %1 $ s %2 $ s ‘,
_X (‘kategori’, ‘kategorinin adından önce kullanılır.’, ‘Yirmi altı’),
$ Category_dist
);
}
$ tags_list = get_the_tag_list (”, _x (‘,’, ‘Liste öğeleri arasında kullanılan, virgülden sonra alan var.’, ‘TwentySixteen’));
if ($ tags_list &&! Is_wp_error ($ tags_list)) {
printf (‘ %1 $ s %2 $ s ‘,
_X (‘etiket’, ‘etiket adından önce kullanılır.
$ tag_list
);
}
/*Bu işlev için kodumuzun değiştirilmesi*/
content_esimated_reading_time (get_the_content ());
}
Bunun yerine, bu değişiklik çocuk teması üzerinde yapılır.
Farklı bir temaya okuma süresinin tahmini bir işlevi eklerken, arama işlevlerini entegre etmenin en iyi yolunun farklı olabileceğini unutmayın. En iyi yaklaşımı bulmak için tartıştığımız adımları izleyerek zaman geçirmeye çalışın.
Umarız bu makaleyi yararlı bulursunuz. Eğer isterseniz, bu makalelerin bazılarını okumaktan çekinmeyin!
Yayın tarihini “Son kez” nasıl gösterilir
Gutenberg editörü için bir blok oluşturun