WordPress Yazı Görüntülenme Sayısı ve En Çok Okunan Yazılar

WordPress Yazı Görüntülenme Sayısı ve En Çok Okunan Yazılar
124

WordPress’te eklentisiz şekilde yazıların görüntülenme sayısını göstermeyi, bunları admin paneline eklemeyi ve en çok görüntülenen yazıların listesini nasıl oluşturacağınızı anlatacağım.

Piyasada birçok eklenti ile bu işi görebilir veya eklentisiz şekilde işinizi halledebilirsiniz ama paylaşacağım kod yapısı en temiz ve sorunsuzu kesinlikle işinizi görecek.

wordpress-post-view


Yazının Görüntülenme Sayısını WordPress’in Hafızasına Ekleyelim

WordPress’te yazıların görüntülenme sayısını göstermenin iki yolu vardır birincisi hazır eklenti kullanma diğeri ise eklentisiz olan yol. Ben eklentisiz kullanmayı tercih edenlerdenim sizde eklentisiz kullanmayı tercih ediyorsanız aşağıdaki adımları uygulayın.

İlk olarak temanızın functions.php dosyasını açın daha sonra aşağıdaki kodu ekleyin.

function setPostViews($postID) {
 $count_key = 'post_views_count';
 $count = get_post_meta($postID, $count_key, true);
 if($count==''){
 $count = 0;
 delete_post_meta($postID, $count_key);
 add_post_meta($postID, $count_key, 0);
 }else{
 $count++;
 update_post_meta($postID, $count_key, $count);
 }
}

Yukarıda yaptığımız işlemle birlikte sayma işlemini yaptırmış olduk, mantığından bahsedecek olursam yazı sayfasının her görüntülenmesi +1 olarak algılanacak. Sayma işlemini bu fonksiyon sayesinde yapacağız.

Şimdi sıra yarattığımız setPostViews fonksiyonunu temamızın single.php dosyasının ortalarında herhangi bir yerine ekleyin.

<?php setPostViews(get_the_ID()); ?>

Daha sonra aşağıdaki kodu temanızın functions.php dosyasına ekleyin.

function getPostViews($postID){
 $count_key = 'post_views_count';
 $count = get_post_meta($postID, $count_key, true);
 if($count==''){
 delete_post_meta($postID, $count_key);
 add_post_meta($postID, $count_key, 0);
 return "0";
 }
 return 'Görüntülenme Sayısı '. $count;
}

Yukarıda yaptığımız işlemle birlikte getPostViews adında bir fonksyion yarattık böylelikle yazının görüntülenme sayısını istediğimiz yerde gösterebileceğiz.

return ‘…’ kısmını kendinize göre düzenleyebilirsiniz.


WordPress Yazının Görüntülenme Sayısını Gösterelim

Yazının görüntülenme sayısını istediğiniz yerde gösterebilirsiniz örneğin single.php. Yazının görüntülenme sayısını göstermek istediğiniz yere aşağıdaki kodu eklemeniz yeterli.

<?php echo getPostViews(get_the_ID()); ?>

WordPress Yazının Görütünlenme Sayısını Admin Panel’e Ekleyelim

wordpress-post-view1

Yazıların görüntülenme sayısını admin paneline eklemek için temanızın functions.php dosyasına aşağıdaki kodları eklemeniz yeterli.

add_filter('manage_posts_columns', 'posts_column_views');
add_action('manage_posts_custom_column', 'posts_custom_column_views',5,2);
function posts_column_views($defaults){
 
 $defaults['post_views'] = __('İzlenme');
 return $defaults;
}
function posts_custom_column_views($column_name, $id){
 
 if($column_name === 'post_views'){
 echo getPostViews(get_the_ID());
 }
}

WordPress En Çok Görüntülenen Yazıları Gösterelim

WordPress’te en çok görüntülenen yazıların listesini yapmak oldukça basit wordpress’in WP_Query mantığı sayesinde meta_key girerek en çok görüntülenen yazıların listesini gösterebilirsiniz. Basit olarak oluşturdum siz bu kod yapısına thumbnail vs ekleyebilirsiniz.

<?php
 $popular_posts = new WP_Query( array(
 'meta_key' => 'post_views_count',
 'orderby' => 'meta_value_num',
 'posts_per_page' => 5
 ) );
 if($popular_posts->have_posts()): ?>
   <?php while($popular_posts->have_posts()): $popular_posts->the_post(); ?> 
     <a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a>
     <?php echo getPostViews(get_the_ID()); ?>
   <?php endwhile; ?>
 <?php endif; ?>

Yorum Yap

Yapılan Yorum (1)

  1. tşkler yazıdan istifade ettim sitemde