وب کافه

یک سایت دیگر با وردپرس فارسی
شمارنده اعلانات ایجکس بادی پرس
نویسنده:
15 نوامبر 14

live_notifications_counter

امروز میخوام آموزشی قرار بدهم که خودم خیلی بهش نیاز داشتم و آن هم ایجکس کردن آگاه سازی ها بود  به این صورت که در بادی پرس وقتی کاربری به کاربر دیگه پیام میفرسته و یا درخواست دوستی میکنه حتما باید سایت دوباره بارگزاری بشود تا شمارنده آگاه سازی یا همون اعلانات یک شماره اضافه کند.

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

$(document).ready(function() {

  setInterval("repeatMe()", 5000); 
});

function repeatMe(){
    $.ajax({
    url:ajaxurl,
	type: "POST",
    dataType: "json",
	data: { action: "live_notifications_counter" },
	success: function(html){
                 $(".not").html(html);				   
				 $(".not").fadeIn("slow");
		          
    	}
  });

}

خب ما با این کد جاوا دستور میدهیم که هر 5 ثانیه function repeatMe لود شود و اگر در آن شماره تغییر کرده بود آن را در class  not نمایش دهد بنابراین در هر بار لود شدن  function live_notifications_counter  چک می شود که ما نیاز داریم این کد را در function.php  پوسته سایت جای دهیم.

 

function live_notifications_counter() {
       $notifications = bp_core_get_notifications_for_user( bp_loggedin_user_id() );
       if(! empty($notifications)){
       $count= bp_notifications_get_unread_notification_count(bp_loggedin_user_id() ) ;
       } 
       echo $count;
       if( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
       die();
       }
}
add_action( 'wp_ajax_live_notifications_counter', 'live_notifications_counter' );
add_action( 'wp_ajax_nopriv_live_notifications_counter', 'live_notifications_counter' );

خب حالا باید کلاس not  را در هر کجای قالب که نیاز داریم جا گذاری کنیم و به آن استایل دهیم

به این صورت

<div class="not"> </div>

و استایل ان نیز به این صورت است که شما میتوانید تغییر دهید

.not{
	background: none repeat scroll 0% 0% rgb(224, 36, 36);
    padding: 1px 3px;
    color: rgb(255, 255, 255);
    border-radius: 3px 3px 3px 3px;

}

حالا اگر شماره انداز آگاه سازی بروز شود بعد از 5 ثانیه شماره آن تغییر خواهد کرد

 

یک پیام برای شمارنده اعلانات ایجکس بادی پرس

  1. سلام

    برای همکاری و یک سری موارد در بادی پرس پارسی لطفا با ایمیل

    تماس بگیرید

    با احترام

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *