How to Display Blog Categories As Separate Pages on WordPress

July 30, 2017

How to Display Blog Categories As Separate Pages on WordPress

WordPress has many uses. Some use it as a store page, others as a services page in which the homepage is one long droll in convincing you why you should purchase their package at the bottom, while a lot of people use it as a professional blog. Tech sites, foodie cooking sites, travel sites, etc you name it – all use a blog format because it is a website focused on adding new content regularly, mainly in the form of articles (or media).

So if your site involves uploading articles of any kind – the upcoming tip will be helpful for you.

Despite many WordPress site owners needing to use their site mainly for articles, WordPress is surprisingly not very well accomodating to this. When you upload an article (or otherwise known as a post) – with tags, and a time stamp and an author – this goes to the blog section, which on WordPress is one whole section, separate from the other pages.


For example: If you are building a cooking website and you are going to post articles on different cooking topics – like ‘Mains’ ‘Desserts’ etc, you will want these different topics to be accessible in the menu above. So that the menu looks like this:

‘Home  About  Main Meals  Desserts  Healthy  Contact Us’


However, WordPress does not work that way. WordPress will make the menu appear like this:

‘Home About Blog Contact Us’


And all those different post topics will all appear under ‘blog’. This is because ‘Home’ and ‘About’ And ‘Contact Us’ are static pages, they are not posts. And when you add a different ‘page’ to your menu, it by default adds it as a static page, and it is therefore not part of your blog. So if you wrote a post it would not go there because it is not part of the blog.

So what you need to do is figure out how to get different Blog Categories to show up in the menu labels instead, rather than ‘Pages‘. So from now on you will be creating a ‘Category’ if you want a new menu label, rather than a ‘New Page’. And when you add a new post, you will make sure to check that post to the category it belongs in before publishing and it will automatically show up in that area of the menu from now on. So it will look like a page but it will actually be part of the blog, just displayed in a more organised way. So then when people click ‘healthy’ at the top, it will take them to a place where only posts associated with the category ‘healthy’ will show up.

And this can all be done without any widgets or plugins involved! It is actually very simple!

How To Do It:

Step 1: Go to WordPress Dashboard, and on the left hand side, select ‘Posts‘ then ‘Categories

Step 2: When you ‘add post’ this will go to your blog, and the only way to separate these posts is by creating categories, then when writing your post ticking the category which is belongs to, then publishing. So before you can tag your posts to these categories, you have to create them first! So here in Categories, create the ones you need. For example ‘mains’ ‘healthy’ ‘desserts’. These are NOT the tags – do not create a million different labels. Consider these categories as labels you would want to have on your website menu.

Step 3: Go to your website page, and at the top click on ‘Customise‘. This will take you to your theme customiser.

Step 4: Find ‘Menus‘ in the left sidebar which opens up now. You will now create a new menu and make that as your default. So ‘Add New‘. Give it a name and continue.

Step 5: Add your categories to this menu now instead of pages. Click on the plus sign, and another sidebar beside it will open. Don’t look at the pages, scroll down and click where it says ‘categories’. Select a category. This is now on your menu. Click the plus sign again and add the rest of the categories you would like to show up on your menu.

Step 6: Make sure to select ‘make primary menu‘ and then save that and publish it. Write posts, check the categories they belong to, and watch them show up only in these designated areas! Voila!



Leave a comment

Your email address will not be published. Required fields are marked *