انجمن


شناسایی دیدگاه نویسنده‌ها حتی بدون ورود به سایت!  (۳ نوشته)

  • Arash-GH

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۲
    تشکر شده: ۲۰ بار
    # نوشته شده: ۱۲ سال پیش
    ۲۱ بهمن ۱۳۹۰ - ۱۰:۳۰

    سلام دوستان عزیز
    یکی از موارد ناخوشایندی که در ارسال دیدگاه برای نویسنده‌ها وجود داره اینه که حتما باید اول وارد سایت بشند تا به عنوان نویسنده‌ی سایت شناسایی بشند، طبیعیه که فقط در این حالته که دیدگاه‌شون استایل نویسنده‌ها رو به خودش می‌گیره.
    خوب یکی از راه‌حل‌های این موضوع اینه که به کمک ایمیل دیدگاه، نویسنده‌ رو تشخیص بدیم، کار خیلی راحتیه... کافیه بعد از تشخیص نویسنده، ID نویسنده‌ رو در User_ID دیدگاه که در دیتابیس قرار داره وارد کنیم.
    من تابعشو نوشتم، ولی نمی‌تونم با دیتابیس ارتباط بگیرم، یعنی درواقع چگونگی ارتباط با دیتابیس رو بلد نیستم!
    ممنون می‌شم در این زمینه منو راهنمایی کنید :)
    این هم تابع:

    add_action('comment_post', 'replace_comment_id');
    function replace_comment_id($comment_id) {
        global $wpdb;
    
    	$comment = get_comment($comment_id, $postdata);
    	$comment_user_id = $comment->user_id;
    
    	if ($comment_user_id==0) {
    	$comment_email = $comment->comment_author_email;
    	$blogusers = get_users_of_blog();
    
    		foreach ($blogusers as $bloguser) {
    			if (get_usernumposts($bloguser->user_id)!=0) {
    		    		$user_email=$bloguser->user_email;
    					if ($user_email==$comment_email) {
    						// *
    						break;
    					}
    			}
    		}
    	}
    }

    * در دیتابیس $bloguser->user_id را به جای user_id قرار بده.

  • Morteza

    آفلاین
    ناظم
    تعداد نوشته‌ها: ۳۴۰۲
    تشکر شده: ۳۱۲۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۲۱ بهمن ۱۳۹۰ - ۱۵:۳۶

    خیلی ساده ، میخواید نویسنده نظرش استایل جدا داشته باشه؟
    خب راه های ساده ایی وجودداره.
    شناسایی مدیر براساس اسم ، ایمیل ، لینک و...
    مثال با ایمیل :
    http://buildinternet.com/2009/09/automatically-highlight-admin-comments-in-wordpress/

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    Arash-GH
  • Arash-GH

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۲
    تشکر شده: ۲۰ بار
    # نوشته شده: ۱۲ سال پیش
    ۲۱ بهمن ۱۳۹۰ - ۱۷:۱۷

    نه مرتضی جان، منظورم چیز دیگه‌ایه، درواقع کاری کنیم که لازم نباشه برای تشخیص نویسنده، حتما نویسنده وارد سایت بشه و بعد دیدگاه بذاره... درواقع می‌خوایم کار نویسنده رو راحت کنیم، دیدگاه بذاره، به عنوان نویسنده شناسایی بشه، درحالی که وارد سایت نشده!!
    به هر حال مشکل حل شد :)
    بابت لینکی که گذاشتی ممنونم... :)
    این هم کد کامل برای دوستانی که مایلند این کد رو داشته باشند ;)

    add_action('comment_post', 'replace_comment_id');
    function replace_comment_id($comment_id) {
        global $wpdb;
    
    	$comment = get_comment($comment_id, $postdata);
    	$comment_user_id = $comment->user_id;
    
    	if ($comment_user_id==0) {
    	$comment_email = $comment->comment_author_email;
    	$blogusers = get_users_of_blog();
    
    		foreach ($blogusers as $bloguser) {
    			if (get_usernumposts($bloguser->user_id)!=0) {
    		    		$user_email=$bloguser->user_email;
    					if ($user_email==$comment_email) {
    						$con = mysql_connect("hostname","username","password");
    						mysql_query("SET CHARACTER SET utf8",$con);
    						mysql_select_db("my_db", $con);
    						mysql_query("UPDATE wp_comments SET user_id='$bloguser->user_id' WHERE comment_ID=$comment_id");
    						mysql_query("UPDATE wp_comments SET comment_author='$bloguser->display_name' WHERE comment_ID=$comment_id");
    						mysql_close($con);
    						break;
    					}
    			}
    		}
    	}
    }
    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    Morteza

درباره‌ی این موضوع



برچسب‌ها

هیچ برچسبی نیست.