PDA

View Full Version : سوال: تابع شمارنده بازدید پستها در وردپرس درست کار نمیکنه!



پروگرامنویس
یک شنبه 19 دی 1395, 10:51 صبح
درود
من دارم پوسته طراحی میکنم
.تابع شمارنده بازدیدها درست کار نمیکنه.یعنی هربازدید رو دوبار حساب میکنه!.مثلا برای اولین بار که پست رو میزارم یک رو نشون میده اما بعدش هربار که رفرش میزنم میشه 3،5،7، و...
کد برگه پست ها:


<tr><td><?php setPostViews(get_the_ID()); ?><?php echo getPostViews(get_the_ID()); ?></td></tr>

کد تابع بازدید فایل فانکشن:



<?php
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);
}
}
?>

خواهشمندم بگید ایرادش کجاست/سپاس

دانیال دزفولی
یک شنبه 19 دی 1395, 20:45 عصر
توی سینگل نباید بذارید.
کد قبلی رو حذف کنید و اینو توی functions.php بذارید




add_action( 'wp_head', 'setPostViews' );

function setPostViews($postID) {

$count = (int) get_post_meta($postID, 'post_views_count', true);

update_post_meta($postID, $count_key, $count++);

}