📌 ثبت و نمایش تعداد بازدید پست ها
🖌 سلام، احتمالا شماهم برای بازدید تعداد پست های سایتتون از یکسری افزونه ها و تکه کدهایی استفاده میکنید که درست کارمیکنند! اما نکته مهم اینجاست که بیش از ۹۰ درصد اونها حتی بازدید های تکراری رو هم ثبت میکنند!
یعنی اگر کاربر صفحه را هربار رفرش کند یک بازدید به بازدیدهای پست اضافه میشود و این خیلی بدِ!
حالا ما براتون تکه کدی رو قرار میدیم که میتونید تعیین کنید که هربازدید کاربر در ۲۴ ساعت یکبار ثبت بشه و یا مثلا هر ۳ ساعت یکبار که بازدید شد اضافه بشه!
و وقتی کاربر از پستی که طی ساعت مشخص شده شما بازدید کرد بهش یک اعلان بدید که شما قبلا این پست رو دیدید!
حرف رو کمتر میکنیم و بریم که کدمون رو بنویسیم 😉
✨ اول یک تابع میسازیم و داخل تابع در مرحله اول یک شرط میذاریم که چک کنیم صفحه نوشته باشد، و بعد شناسه پست و ادامه کد ها، همراهمون باشید...
function md_post_view(){✅ کدمون رو نوشتیم که هم ایپی کاربر رو مورد بررسی قرارمیده و هم کوکی رو 😉 اینطوری دیگه مشکل بازدید تکراری نخواهید داشت
if(is_single()){
$post_id = get_the_ID();
$cookie_name = 'post_view_'.$post_id;
$user_id_addr = $_SERVER['REMOTE_ADDR'];
$user_agent = $_SERVER['HTTP_USER_AGENT'];
if(!isset($_COOKIE[$cookie_name]) && !empty($user_id_addr) && !empty($user_agent)){
$views = get_post_meta($post_id,'post_views',true);
$views = $view ? intval($views) + 1:1;
update_post_meta($post_id,'post_views',$views);
setcookie($cookie_name,true,time()+86400,'/');
}else{
echo "<script> alert('این پست رو قبلا مشاهده کردید');</script>
}
}
}
add_action('wp','md_post_view');
🤔 حالا چطور تعداد بازدید رو نمایش بدیم؟؟؟
خب برای اینکار فقط کافیه هرقسمتی که میخواید تعداد بازدید رو نمایش بدید، متای مورد نظر رو فراخوانی کنید، مثلا :
$md_view = get_post_meta(get_the_ID(),'post_views',true);😱 به همین راحتی تموم شد رفت پی کارش!
echo 'تعداد بازدید : '.$md_view;
🫵 سیوش کن لازمت میشه، برای همکارای دیگه هم بفرست و البته نظرت رو هم کامنت کنننن 😉
@wpheart