Я пытаюсь получить список авторов на моем сайте & их общее количество сообщений.
Весь этот код работает, кроме части $ count_posts ($ author-> ID) в цикле.
Я думаю, что также могут быть проблемы с моим массивом для get_users — так как я пытаюсь добавить больше частей в массив.
function all_authors_list() {
$authors = get_users(array(
'role' => 'subscriber',
'orderby' => 'post_count',
'order' => 'DESC',
'number' => '20',
)
);
$authors = $count_posts;
$count_posts = wp_count_posts('page');
$published_posts = $count_posts->publish;
foreach($authors as $author) {
echo '<div class="author-name">' . $author->first_name . ' ' . $author->last_name . '</div>';
echo '<div class="author-post-count">' . $count_posts($author->ID) . '</div>';
}
}
Таким образом, окончательный результат должен быть примерно таким:
Джон Смит
20
Патриция Лонг
35
…и т.п.
Напишите этот код ниже в вашем посте:
<p><?php the_author(); ?> has <?php echo number_format_i18n( get_the_author_posts() ); ?>
posts</p>
Ссылка: http://codex.wordpress.org/Function_Reference/get_the_author_posts
Вы можете использовать count_many_users_posts
чтобы достичь этого.
В основном вы получите идентификатор пользователя в массиве, который генерируется $authors
и вы можете использовать этот идентификатор пользователя в count_many_users_posts
,
Есть три параметра в count_many_users_posts
функция, и вы можете использовать $post_type
параметр, чтобы получить только страницы.