Для подсчета количества постов у определенного автора в WordPress можно использовать несколько различных методов. Рассмотрим два из них.
1. Использование базовых функций WordPress:
Вам потребуется использовать функции WP_Query
и get_posts
, чтобы получить все посты определенного автора, а затем просто посчитать количество полученных постов.
Ниже приведен пример кода:
$author_id = 1; // ID автора $args = array( 'author' => $author_id, 'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => -1 // Получить все посты автора ); $posts = get_posts($args); $count = count($posts); // Получаем количество постов echo "Количество постов у автора: " . $count;
В этом примере мы указываем ID автора и определяем параметры запроса в массиве $args
. Затем мы используем функцию get_posts
для получения всех постов автора, соответствующих нашим параметрам запроса. После этого мы просто считаем количество полученных постов с помощью функции count
.
2. Использование SQL-запроса:
Если вам необходимо выполнить более сложный запрос или получить дополнительную информацию о постах автора, можно воспользоваться SQL-запросом. Для этого можно использовать функцию $wpdb
(глобальный объект WordPress для работы с базой данных).
Ниже приведен пример SQL-запроса, который посчитает количество постов у определенного автора:
$author_id = 1; // ID автора $query = "SELECT COUNT(ID) AS count FROM $wpdb->posts WHERE post_type = 'post' AND post_status = 'publish' AND post_author = %d"; $count = $wpdb->get_var($wpdb->prepare($query, $author_id)); echo "Количество постов у автора: " . $count;
В этом примере мы используем SQL-запрос, чтобы посчитать количество постов в таблице $wpdb->posts
, где post_type
равен "post", post_status
равен "publish" и post_author
равен ID автора. Мы используем функцию $wpdb->prepare
для безопасного форматирования SQL-запроса и передачи значения ID автора ($author_id
). Затем мы используем метод $wpdb->get_var
, чтобы получить количество постов из результата запроса и выводим его на экран.