Как вывести список топ авторов

Выводим список топ авторов.

Как вывести список топ авторовОчень часто движок WordPress используется для ведения не только персонального блога, но много авторских блогов, на которых открыта регистрация для других авторов.

Такие авторы являются или постоянными и часто размещают свои посты и статьи на вашем ресурсе, или они иногда посещают ваш блог и периодически пишут свои заметки.

Однако в WordPress не предусмотрен виджет вывода списка ТОП авторов. Эту проблему можно решить с помощью не сложных модификаций с файлом функций — functions.php.

Откройте в редакторе файл functions.php вашей текущей темы и вставьте в него следующий код:

function top_authors($number = 10) {
	$uc = array();
	$blogusers = get_users_of_blog();
	if ($blogusers) {
		echo '<ul>';
		foreach ($blogusers as $bloguser) {
			$post_count = get_usernumposts($bloguser->user_id);
			$uc[$bloguser->user_id] = $post_count;
		}
		arsort($uc);
		$i = 0;
		foreach ($uc as $key => $value) {
			$i++;
			if ($i <= $number) {
				$user = get_userdata($key);
				$author_posts_url = get_author_posts_url($key);
				$post_count = $value;
				if ($post_count > 0) {
					echo '<li><a href="' . $author_posts_url .'">' . $user->display_name . '</a> (' . $post_count . ')</li>';
				}
			}
		}
		echo '</ul>';
	}
}

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

<?php if (function_exists('top_authors')) top_authors(10); ?>

Число 10 – это количество отображаемых авторов.

В результате у вас будет выводиться список авторов, где Имя будет ссылкой на страницу автора, а в скобках будет указано количество опубликованных им статей.

Вот и все.

Удачи вам и процветания!

Автор - Александр

Меня зовут Александр.
Я Вебмастер и SEO — специалист по созданию и продвижению сайтов на WordPress.
В профессиональном интернет-маркетинге c 2007 года. Основные направления: создание и продвижение web-проектов в российском сегменте интернет. Специализация: создание сайтов и их комплексное продвижение, внутренняя оптимизация, внешняя оптимизация, трафиковое продвижение, контентное продвижение...

Связаться со мной >>
Посмотреть все публикации

    Ваше имя (обязательно)

    Ваш e-mail (обязательно)

    Сообщение (обязательно)

    "Поставьте галочку, если вы не робот"

    и решите пример ответ буквами

    10 комментариев

    • Геннадий

      «Для того чтоб отобразить этот список, вставьте там где вам нужно вот этот код» — нельзя ли поконкретнее объяснить эту фразу: в какой папке вставлять подобные коды?

      • Александр

        Можно вставить в сайдбар, с помощью виджетов, или в шаблон сайта отредактировав файл page.php или index.php, где вы хотите видеть список авторов.

    • Геннадий

      Ничего не выходит. После установки первого кода, он отражается вверху админпанели и автоматически создается специальный код в виджетах. На странице топ комментаторов не отражается.

    • Геннадий

      Вот как выглядит мой functions.php Я вставил код в самом низу, а что получается, я сказал в предыдущем ответе. У меня вообще какие-то проблемы со вставкой и редактированием кодов — все идет не так. Мне нужно было бы убрать несколько плагинов, заменить их функции вставкой подобных кодов, но получается что попало, даже синтаксические ошибки. Мне нужен фрилансер или опытный блоггер, который бы помог выйти из ситуации.

    • Владимир

      Всё получилось!
      Спасибо!
      Подскажите, как рядом с ником автора его вывести его аватар

    • Александр

      Владимир, нужно добавить функцию вывода аватара.

    • Владимир

      Спасибо, Александр, хороший совет!
      можете дать пример кода, как в этой статье
      приведен код для вывода списка топ комментаторов?

    • Александр

      Владимир, вот ссылка на плагин, который выводит ТОП комментаторов http://wordpress.org/extend/plugins/top-commentators-widget/ у него много настроек, можно настроить, как вы хотите.

    • Александр

      А вот здесь рассказано как это сделать без плагина http://subscribe.ru/group/wordpress-ot-a-do-ya/1621112/

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *