Как вывести последние комментарии в мультисайтовом блоге

С выходом WordPress 3.X у блоггеров появилась возможность делать мультисайтовые блоги, в которых у каждого пользователя может быть собственный раздел, который можно сделать отдельным сайтом. Иногда требуется вывести не просто последние комментарии какого-то сайта, но и вообще все последние комментарии мультисайтового блога.

Для вывода последних комментариев со всех сайтов мультисайтового блога, не применяя плагинов, используйте приведенный ниже код:

function get_network_comments()
{
	global $wpdb;
	$number = 10; // количество выводимых комментариев
	$selects = array();
	foreach (wp_get_sites($args) as $blog)
		
		$selects[] = "(SELECT comment_post_ID, comment_author, comment_author_email, comment_date_gmt, comment_content, post_title, {$blog['blog_id']} as blog_id FROM {$wpdb->base_prefix}{$blog['blog_id']}_comments
		  LEFT JOIN {$wpdb->base_prefix}{$blog['blog_id']}_posts
		  ON comment_post_id = id
		  WHERE post_status = 'publish'
			AND post_password = ''
			AND comment_approved = '1'
			AND comment_type = ''
		   ORDER BY comment_date_gmt DESC LIMIT {$number})"; 
 
		$comments = $wpdb->get_results(implode(" UNION ALL ", $selects)." ORDER BY comment_date_gmt DESC", OBJECT);
 
		$count = 0;
		foreach((array)$comments as $comment):
		  $count++;
		  if($count == $number+1) break; 
		  ?>
		  
  • comment_author_email, 32); ?> comment_author; ?> on comment_post_ID); ?>" title="commented on post_title); ?>"> comment_content); ?>
  • <?php endforeach; }

    Этот код нужно вставить в файл functions.php. Ну а для того, чтобы вывести комментарии, нужно вставить в шаблон:

    Автор tiaurus 2182 Articles
    Являюсь создателем n-wp.ru — блога о WordPress для новичков. Мне интересно многое, поэтому еще я сделал 123-box.ru — блог о программах для Windows, и tiaurus.info — блог о красоте.

    Оставьте первый комментарий

    Оставить комментарий

    Ваш электронный адрес не будет опубликован.


    *