Lấy bài viết mới được bình luận gần đây

Nếu bạn đang có nhu cầu truy vấn các bài viết mà được người dùng bình luận gần đây nhất thì có thể thử theo cách trong bài hướng dẫn này của mình. Cái này là truy vấn bài viết mới được bình luận chứ không phải lấy bình luận mới nha các bạn. Nếu bạn nào chưa biết nhiều về code thì có thể tham khảo qua bài viết Cách truy vấn bài viết trong WordPress, tuy nhiên với bài đó thì bạn áp dụng WP_Query, còn trong bài này là bạn thực hiện câu lệnh SQL trực tiếp.

global $wpdb;
$ppp     = get_option( 'posts_per_page' );
$results = $wpdb->get_results( "SELECT wp_posts.ID, MAX(comment_date_gmt) AS comment_date_gmt FROM $wpdb->posts wp_posts RIGHT JOIN $wpdb->comments ON id = comment_post_id WHERE wp_posts.comment_count > 1 GROUP BY ID ORDER BY comment_date_gmt DESC LIMIT $ppp" );
if ( $results ) {
	$have_posts = true;
	global $post;
	$tmp = $post;
	foreach ( $results as $obj ) {
		$post = get_post( $obj->ID );
		setup_postdata( $post );
		hocwp_theme_load_custom_loop( 'post' );
	}
	wp_reset_postdata();
	$post = $tmp;
}

Trên đây là ví dụ cách lấy các bài viết mới được bình luận gần đây dựa vào biến $wpdb có sẵn của WordPress. Nếu bạn muốn mở rộng thêm code thì có thể bổ sung thêm lấy theo post type nhất định hoặc các điều kiện khác bằng cách thêm vào điều kiện WHERE của truy vấn SQL nhé. Chúc bạn thành công.

Leave a Reply

Be the First to Comment!

Notify of
avatar
wpDiscuz