How to List all the posts on your site by category

Updated: April 07, 2021


Drive 20-40% of your revenue with AVADA
avada email marketing

It’s common to show a list of posts arranged by categories on your homepage so that your customers can easily see all of your posts in different topics. It is essential for you to read carefully this instructional writing on How to list all posts on your site by category if you want to make this list on your own page.

How to list all posts on your site by category

Step 1: How to create a layout

Before taking an official step on adding the code to list your posts in category on your site, you need to know How to create a layout that will show the posts.

In _layouts directory, create a new file called home.html and add the following logic:

layout: default

{{ content }}
<ul class="myposts">
{% for post in site.posts %}
    <li><a href="{{ post.url }}">{{ post.title}}</a>
    <span class="postDate">{{ | date: "%b %-d, %Y" }}</span>
{% endfor %}

Step 2: Create

Then, in your root directory, create a file called and specify the home layout:

title: Blog
layout: home

From that, contents of will be pushed into the {{ content }} tag in the home layout which will be pushed into the {{ content }} tag of the default layout.

Step 3: Generate post list

Now, take a step on adding the code to create a list of posts in category on your website.

If directory helps you show all your posts, site.categories file will allow you arrange your posts in categories on your page. In this file, each item is an array with two elements. The first element in the array is the category name, the second element is a list of the posts in that category. Take a look at this following code and add it to your file.

{% for category in site.categories %}
  <h2>{{ category[0] }}</h2>
    {% for post in category[1] %}
      <li><a href="{{ post.url }}">{{ post.title }}</a></li>
    {% endfor %}
{% endfor %}

Your installation process is completed and your customers can see all your posts in categories from now.


It is extremely simpler for your customers to see all of your posts right on your website, especially in each category. With some very basic steps above, we hope that this post brings useful information in your web development process. Keep following us in next informative tutorials to get interesting things. Thank you for reading!

Recommend for you
Image Description
SMS, Email Marketing Automation

Top rated Marketing automation for Shopify stores

Learn more
Image Description
SEO Suite

Auto-optimize website elements and structure in one-click.

Learn more
Boost Sales [Free]

Boost sales: Sales Pop, Trust badges, Countdown timer, more

Learn more
Image Description
Photo Reviews [Free]

Use photo reviews to boost sales

Learn more


Stay in the know

Get special offers on the latest news from AVADA.

40k subscribers has been joined!

Earn $10 in reward now!

go up