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

25.06.2017 | Автор: Maxim Glovatsky Оставить комментарий »

Если на Вашем WordPress сайте публикуют свои статьи несколько авторов, то Вам может пригодиться фича для вывода списка топ авторов, отсортированных по количеству опубликованных ими записей. Код функции помещаем в файл function.php Вашей WordPress темы:

<?php
function top_authors($number = 7) {
  $uc = array();
  $blogusers = get_users();
  if ($blogusers) {
    echo '<ul>';
    foreach ($blogusers as $bloguser) {
      $post_count = count_user_posts($bloguser->ID);
      $uc[$bloguser->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(7); ?>

Цифра 7 — это количество отображаемых авторов.

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

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