خرید هاست خرید سرور

مشکل نمایش تعداد بازدید مطالب سایت

با سلام و عرض ادب

سال نو همگی مبارک

بنده برای نمایش بازدید نوشته ها و … در قالب سایتم از کد زیر استفاده کردم :

function get_post_view($post_id)
{
    if (intval($post_id)) {
        $post_view = get_post_meta($post_id, 'views', true);
        return intval($post_view);
    }
    return 0;
}
function set_post_view($post_id)
{
    if (intval($post_id)) {
        $views = get_post_view($post_id);
        $views++;
        update_post_meta($post_id, 'views', $views);
    }
} 

اما به دوتا مشکل بر خوردم ،

یک اینکه با افزونه راکت ناسازگاری داره ، یعنی برای اینکه بازدید هارو ثبت کنه هی باید توسط ادمین کش پاک بشه.

دوم اینکه میخوام وقتی تعداد بازدید ها به هزار رسید به جای نمایش 1024 به این گونه نمایش داده بشه : 1k

ممنون میشم راهنمایی کنید

@Hosein
فکر میکنم حسین عزیز این قسمتیاری برسونن

2 Likes

سلام
جایگزین کن ؛

function set_post_views( $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 );
        
    }
    
}
 
 
 function get_post_views( $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 بازدید";
    }
 $count = str_replace(',', '', $count);
	if ( $count >= 1000 ) 
	{
		$count = number_format($count / 1000, 1) . 'K';
	}
	else if ( $count >= 1000000 ) 
	{
		$count = number_format($count / 1000000, 1) . 'M';
	}
	else if ( $count >= 1000000000 ) 
	{
		$count = number_format($count / 1000000000, 1) . 'B';
	}		
//	return $count;
 
 return $count.' بازدید';
}
5 Likes

واقعا ممنونتم آقا حسین عزیز

اما متاسفانه اضافه کردن این کد خطا ایجاد میکنه و مینویسه (خطای مهم در وب سایت)

چیکار کنم این مشکل و مشکل کش و راکت با این کد حل بشه ، بعضی مواقع بازدید ها ثبت نمیشه حتما باید توسط ادمین کش خالی بشه تا بازدید ها ثبت بشه

1 Like

سلام
بطور کلی چه این کد و چه هر کدی که در انجمن سون هاست قرار میدم
پیش از ارسال تست میکنم که مشکلی نداشته باشه و برای شما و سایر کاربرانی که همین مشکلات را دارند جامع و کامل باشه
اما اینکه مشکلی در سایتتون پدیدار میشه باید بررسی کنید که علتش چیه
ما هر کدی که به شما میدیم یا کار نمیکنه یا سایتتون خطا میده
کد بالا هم باید جایگزین کد قبل میکردید و تابعی با نام فانکشن هایی که ارسال کردم براتون نباید باشه
بنابراین باید عیب یاب وردپرس را فعال کنید ببیید به کجا ایراد میگیره

افزونه هایی مانند راکت و توتال کش و … این افزونه ها بطور کلی کد ها را بصورت استاتیک کش میکنن
و همونطور که گفتد باید کش دائما پاک شوند و مشکل بازدید ها که کش میشوند, ارتباطی به کد سمت سرور نداره
زیاد از این افزونه ها استفاده نکردم که ببینم اددان خاصی برای پاک کردن کش بصورت خودکار دارن یا نه
اما از نظر من بهترین افزونه برای بهینه سازی و فشرده سازی و همچنین کش کردن , افزونه wp-autoptimize هستش
محیط تنظیماتش کاملا راحت و ساده هست

4 Likes

کدی که شما فرستادید رو اضافه کردم اول اینکه خط اخر کد خطا میده حالا خودم یه { اضافه کردم خطاش رفع شد.
بعد فانکشن شمارو باید چجوری فراخوانی کنم؟
این افزونه تو ژاکت نیست از کجا میتونم خریداری کنم.

2 Likes

افزونه رایگانه
از مخزن وردپرس دانلود کن

2 Likes