Beginner's Guide for WordPress / Start your WordPress Blog in minutes

How to Show Total Number of Posts in WordPress

Do you want to show the total number of posts on your WordPress site?

Showing total number of articles may help showcase the consistency of your blog and encourages users to look for more content.

In this article, we will show you how to easily display total number of posts in WordPress.

Show total number of posts in WordPress

Method 1: Show Total Number of Posts in WordPress Using a Plugin

This method is easier and recommended for all users.

First thing you need to do is install and activate the Simple Blog Stats plugin. For more details, see our step by step guide on how to install a WordPress plugin.

Upon activation you need to visit Settings » Simple Blog Stats to configure plugin settings.

Simple Blog Stats plugin shows you useful WordPress stats like total number of comments, users, pages and posts. You can easily display these stats using shortcodes anywhere on your WordPress site.

Blog stats shortcodes

Simply copy the [sbs_posts] shortcode and add it to any WordPress post, page, or shortcode enabled sidebar widget.

It will show the total number of published posts on your WordPress site.

number of posts

You can also use [sbs_blog_stats] which will show all blog stats including the total number of posts.

Blog stats

Method 2. Manually Display Total Number of Posts in WordPress

This method requires you to add code to your WordPress site. If you haven’t done this before, then take a look at our guide on how to copy and paste code in WordPress.

First, you need to add this code to your theme’s functions.php file or a code snippets plugin.

function wpb_total_posts() { 
$total = wp_count_posts()->publish;
echo 'Total Posts: ' . $total;
} 

This code will simply output the total number of posts whenever the template tag wpb_total_posts is called.

The easiest way to add this code in WordPress is by using a code snippets plugin like WPCode. It lets you safely add code without editing your theme’s functions.php file, so you don’t need to worry about breaking your site.

To get started, you need to install and activate the free WPCode plugin. If you need help, follow our tutorial on how to install a WordPress plugin.

Once the plugin is activated, go to Code Snippets » + Add Snippet from the WordPress dashboard. On the Add Snippet page, find the ‘Add Your Custom Code (New Snippet)’ option and click the ‘Use snippet’ button underneath it.

Add a new custom code snippet in WPCode

Next, add a title for your snippet and paste the code from above into the ‘Code Preview’ box. Don’t forget to also choose ‘PHP Snippet’ as the code type from the dropdown list on the right.

Paste code into the WPCode plugin and select the code type

After that, simply toggle the switch from ‘Inactive’ to ‘Active’ and click the ‘Save Snippet’ button.

Activate and save your custom code snippet

Once that’s done, you need to add <?php wpb_total_posts(); ?> in your theme files where you want to display total number of posts.

If you don’t want to use the template tag, then you can create and use a shortcode that does exactly the same thing.

Copy and paste the following code to your theme’s functions.php file or a code snippets plugin to create a shortcode:

function wpb_total_posts() { 
$total = wp_count_posts()->publish;
return $total; 
} 
add_shortcode('total_posts','wpb_total_posts');

You can follow the same steps as above to easily add this code using the WPCode plugin.

Paste code in the WPCode plugin to create shortcode

Now you can use the shortcode [total_posts] to display total number of posts in any posts, pages, or sidebar widgets.

We hope this article helped you learn how to show total number of posts in WordPress. You may also want to see our mega list of most wanted WordPress tips, tricks, and hacks or our picks of the best social proof plugins for WordPress.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

16 CommentsLeave a Reply

  1. Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Does not work for me :-(

    Is it because of code updates? Would love to see an updated version if so :)

    • We’ll be sure to take a look at our code, for the time being, you may want to look into the plugin for an alternative :)

      Admin

    • For the plugin, you would want to reach out to the plugin’s support for if that is an option in the current version.

      Admin

  3. Hi Nice and works great with the shortcode. Tried plugin and stopped the website.

    How do i get separate like 21.500 posts ? now it say 21500

    cheers

    • Using the shortcode method in your functions.php or your site-specific plugin you would replace:
      return $total;
      With:
      return number_format_i18n($total);
      to add the comma

      Admin

  4. Thanks for the extremely useful article (for us non-programmers). What if I have 6 different categories of posts (related to, say, jobs, offices for rent, supplies, etc.), and I want to get a separate count for each category?

    • Hi Jay,

      If you just want to show how many posts are there in each category then you can use the Categories widget and add it to your sidebar. In widget settings you will see an option to display the number of posts next to each category.

      Admin

Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.