بازدید نوشتهها یکی از روشهایی است که میتوان فهمید کاربران کدام یک از نوشتههای وبسایت را بیشتر میپسندند. برای نمایش بازدید نوشتهها در وردپرس، افزونههای مختلفی کدنویسی و توسعه داده شدهاند امّا همانطور که میدانید به علت اینکه افزونهها باید همیشه در هسته وردپرس در حال اجرا باشند، به همین خاطر توصیه میشود برای موارد خاص افزونه نصب کرد.
یکی از روشهایی که میتوان بازدید مطالب در وردپرس را نمایش داد، استفاده از توابع زیر برای بهروزرسانی و نمایش بازدید میباشد. در واقع در این روش یک متغیر متا برای هر نوشته تعریف میشود و با هر بار بازدید صفحه توسط کاربر، این متغیر بهروزرسانی میگردد. بهروزرسانی بازدید را تابع setPostViews و نمایش آن را تابع getPostViews انجام میدهد.
برای نمایش بازدید، باید قطعه کد زیر را در فایل functions.php پوسته فعال وبسایت قرار دهید.
<?php
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 View"; // View : بازدید
}
return $count.' Views';
}
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);
}
}
// Remove issues with prefetching adding extra views
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0);
?>
اگر میخواهید یک ستون به بخش نوشتهها اضافه کنید تا بازدید نوشتهها را هم در آنجا مشاهده کنید، کافی است کد زیر را به functions.php اضافه نمایید.
<?php
// Add to a column in WP-Admin
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'] = __('Views');
return $defaults;
}
function posts_custom_column_views($column_name, $id){
if($column_name === 'post_views'){
echo getPostViews(get_the_ID());
}
}
?>
حال برای تنظیم بازدید نوشتهها، باید تابع setPostViews را در حلقه وردپرس قرار دهید.
<?php
setPostViews(get_the_ID());
?>
نکتهای درباره Fragment Caching: اگر شما از افزونه W3 Total Cache استفاده میکنید، تابع ()setPostViews به عنوان تنظیم بازدید کار نخواهد کرد. افزونه W3 Total Cache ویژگی Fragment Caching را فراخوانی خواهد کرد. در صورتی که میخواهید این تابع به درستی فراخوانی شود، از قطعه کد زیر استفاده نمایید.
<!-- mfunc setPostViews(get_the_ID()); --><!-- /mfunc -->
برای نمایش تعداد بازدید به کاربران کافی است کد زیر را در هر بخش از فایل single.php که میخواهید نمایش داده شود، قرار دهید.
<?php
echo getPostViews(get_the_ID());
?>
کد نمایش بازدید در وردپرس، یک کد بسیار کاربردی میباشد که میتواند به شما در جذب محتوای کاربر محور کمک کند. امیدوارم از این کد استفاده کرده و لذّت ببرید. در صورتی که نیاز به افزونه اختصاصی دارید، کافی است از بخش افزونه وردپرس، افزونه اختصاصی خود را درخواست دهید.
منبع: isitwp