انجمن


کوئری دستی برای نمایش نظرات  (۹ نوشته)

  • alik23

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

    سلام دوستان

    میشه با کلاس دیتابیس وردپرس ، یک کوئری دستی که بتونم نظرات رو بخونم از دیتابیس به من بدید ؟ من با کلاس وردپرس آشنا نیستم
    با فانکشن های خود php نباشه . از کلاس خود وردپرس استفاده شده باشه لطفا

    ممنون

  • Parsa

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

    function mycomments($limit=5){
    	global $wpdb;
    
    	$sql = "SELECT DISTINCT ID, post_title, post_password, comment_ID,
    	comment_post_ID, comment_author, comment_date_gmt, comment_approved,
    	comment_type,comment_author_url,
    	SUBSTRING(comment_content,1,60) AS com_excerpt
    	FROM $wpdb->comments
    	LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID =
    	$wpdb->posts.ID)
    	WHERE comment_approved = '1' AND comment_type = '' AND
    	post_password = ''
    	ORDER BY comment_date_gmt DESC
    	LIMIT $limit";
    	$comments = $wpdb->get_results($sql);
    
    	$output = $pre_HTML;
    	$output .= "\n<ul>";
    	foreach ($comments as $comment) {
    	$output .= "<li><a href=\"" . get_permalink($comment->ID) .
    	"#comment-" . $comment->comment_ID . "\" title=\"در مطلب » " .
    	$comment->post_title . "\">" ;
    
    	$linklen = strlen(strip_tags($comment->comment_author) .": ". strip_tags($comment->com_excerpt));
    	if ($linklen>110) {
    		$output .= "<font color='#36CD60'>" . strip_tags($comment->comment_author) .":</font> ". strip_tags($comment->com_excerpt) . " ...";
    	}else{
    		$output .= "<font color='#36CD60'>" . strip_tags($comment->comment_author) .":</font> ". strip_tags($comment->com_excerpt);
    	}
    	$output .= "</a></li>";
    	}
    	$output .= "\n</ul>";
    	$output .= $post_HTML;
    	echo $output;
    }
    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    NESTED - امین - Morteza - Mostafa - alik23
  • alik23

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

    ممنون از لطف شما

    فقط مشکلی که هست اینه که برای همه مطالب یک نوع نظر رو نشون میده .

    یعنی 4 تا نظر هست که برای همه مطالب اون هارو نشون میده

    نمیدونم کجا رو اشتباه کردم

  • alik23

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

    دوستان ؟ یک کمک کوچیک کافیه :دی

    فکر میکنم مشکل از آیدی هر مطلبه ، یعنی شاید نمیگیرتش

  • Morteza

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

    تست کنید:

    function mycomments(){
    	global $wpdb,$post;
    	global $limit;
    	$limit = get_comments_number($post->ID);
    
    	$sql = "SELECT DISTINCT ID, post_title, post_password, comment_ID,
    	comment_post_ID, comment_author, comment_date_gmt, comment_approved,
    	comment_type,comment_author_url,
    	SUBSTRING(comment_content,1,60) AS com_excerpt
    	FROM $wpdb->comments
    	LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID =
    	$post->ID)
    	WHERE comment_approved = '1' AND comment_type = '' AND
    	post_password = ''
    	ORDER BY comment_date_gmt DESC
    	LIMIT $limit";
    	$comments = $wpdb->get_results($sql);
    
    	$output = $pre_HTML;
    	$output .= "\n<ul>";
    	foreach ($comments as $comment) {
    	$output .= "<li><a href=\"" . get_permalink($comment->ID) .
    	"#comment-" . $comment->comment_ID . "\" title=\"در مطلب » " .
    	$comment->post_title . "\">" ;
    
    	$linklen = strlen(strip_tags($comment->comment_author) .": ". strip_tags($comment->com_excerpt));
    	if ($linklen>110) {
    		$output .= "<font color='#36CD60'>" . strip_tags($comment->comment_author) .":</font> ". strip_tags($comment->com_excerpt) . " ...";
    	}else{
    		$output .= "<font color='#36CD60'>" . strip_tags($comment->comment_author) .":</font> ". strip_tags($comment->com_excerpt);
    	}
    	$output .= "</a></li>";
    	}
    	$output .= "\n</ul>";
    	$output .= $post_HTML;
    	echo $output;
    }
    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    NESTED
  • alik23

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

    حالا به تعداد کامنت های موجود در مطلب ، کامنت اول رو تکرار میکنه

    یعنی مثلا 12 تا کامنت داخل مطلب هست ، فقط 12 بار اولی رو نمایش میده

  • alik23

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

    شرمنده من هی اسپم میکنما ، ولی سایت ظاهر بدی پیدا میکنه
    روزانه 15 هزار تا هیت میخوره و هی ایمیل پشت سر هم که نظرات کار نمیکنه و ...

    وگرنه من آدم عجولی نیستم

  • alik23

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

    دوستان کسی نیست !!!!!! ؟؟؟؟

  • Parsa

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

    کدی که قرار داده شده را در سایتی دارم استفاده میکنم و مشکلی نداره
    میتوانید از کدهای دیگر استفاده نمائید

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    Morteza

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



برچسب‌ها

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