wp_count_posts() или как посчитать количество постов в WordPress.

Очень удобная и быстрая функция, которая позволяет получить количество постов определенного типа записей, а также любого статуса, даже неопубликованные и удаленные.

В принципе, при работе с WP_Query () вы также можете получить количество постов согласно вашего запроса, но нужно ли это делать в каждом случае или может быть вам захочется получить количество постов, которые обладают не только статусом опубликованных.

wp_count_posts ( $type, $perm ) ;
$type
(строка)(необязательно) указываем название типа записей, которое хотим посчитать. По умолчанию: ‘post’.
$perm
(строка)(необязательно) позволяет сделать так, чтобы в подсчёт количества записей добавились личные (приватные) посты пользователя . Для этого указываем ‘readable’.

Возвращает объект с указанием количества постов для каждого статуса. Вот пример того, что в итоге получится:

stdClass Object
	(
   	 	[publish] => 23
		[future] => 0
    		[draft] => 0
	    	[pending] => 0
	    	[private] => 0
    		[trash] => 0
    		[auto-draft] => 0
    		[inherit] => 0
    		[request-pending] => 0
    		[request-confirmed] => 0
    		[request-failed] => 0
    		[request-completed] => 0
	)

Самое главное не забывать, что функция возвращает объект, а не просто количество опубликованных постов. Сейчас приведу простой пример как вывести количество опубликованных постов для вашего кастомного типа записей:

	$count_posts = wp_count_posts('services'); //указываем созданный вами тип записи - services
 
	$published_posts = $count_posts->publish; //количество только опубликованных записей
 
	echo $published_posts; //выводим полученное количество

Роман

WordPress разработчик.
Улыбаюсь я потому, что WordPress - лучшая cms!

Комментарии — 1

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал