This tutorial only works from WP 3.03 and below.
Hey guys, as most of you know I recently set up a secondary blog section for my personal blogs. Since it took alot of trouble-shooting and help from a friend I thought I’d save you the hassle that I went through trying to create it.
So this is a ‘how-to’ on creating a second blog section where I will walk you through all the necessary steps in order for you to create your very-own secondary blog.
Making the Categories
So first off you want to make a category that you will be using in the second blog, this will define what is in the new section.
- Under the ‘Posts’ tab in the sidebar go to the Categories page.
- Make a new category (more than one if you want to have multiple categories associated with the new blog), you may call it whatever you want but make sure you remember it’s unique ID to use later on).
Making the PHP File
What you want to do now is make a new PHP file.
- Go into your Editor page (located under the apperance tab in the admin sidebar) and select the ‘Main Index Template (index.php)’.
- Copy all the text and code to your clip-board.
- Create a new blank text document using either Notepad or Wordpad or any other text editor and paste all of the code into the blank text documment.
- Add the following code above all of the code and text into the text document:
<?php /*Template Name: Blog*/ ?>
- Replace the ‘Blog’ part in that code to whatever name you want, just make sure you can recognise it later on.
- Save the file as blog.php (replace ‘blog’ with the name of your choice).
- Upload the PHP file to your theme folder (i.e www.mysite.com/wp-content/themes/mytheme/).
Creating the Query
Now you want to define the content that your second blog displays (i.e the categories we made before).
- Go to the Editor page again (under the apperance tab) and open the new page that you made (i.e blog.php).
- Now about two lines of code down from where you put the “Template Name: Blog” code, under: <div id=”content”> enter the following code:
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; query_posts("cat=#&paged=$paged"); ?>
- Replace the ‘#’ symbol with the ID number for the category we made (e.g cat=12).
- Click the ‘Update File’ button.
Note: If you have two or more categories that you want to associate with your new blog, simply seperate each category ID with a comma (,) (i.e: cat=12,5,9)
Stop Posts From Displaying in the Main Section
So now that the posts can display in the new section, you’re going to want them to NOT display in the main section.
- Open up the Main Template File (index.php) in the Editor page again.
- In the same spot that you put the query in the blog.php file, put the following code into the index.php file.
<?php query_posts($query_string . '&cat=-#'); ?>
Note: Remember to put a minus (‘-‘) symbol infront of the unique ID’s this time, so instead of inserting it, it’s going to remove it.
- Just like last time, replace the ‘#’ with the ID tag of your category (if you have more seperate them with commas just like before).
- Click the ‘Update File’ button.
Creating the Page
Now you want to create the page that is going to hold the PHP file.
- Go to the Add New page under the ‘Pages’ tab.
- Give the page a name (e.g ‘Blog’).
- In the sidebar on the right in the ‘Attributes’ section you should see a setting called ‘Template’.
- Click the Dropdown menu and select your PHP file name (i.e ‘Blog’).
- Then click ‘Publish’
Adding Posts to the New Section
What you’ll want to do now is add posts to this new section that you’ve created. It’s very simple.
- Write a new post.
- Have the categories for the new post set on the categories that you created and added to the files (if you use any of the ones that you didn’t add the the list, it will display on the main page and not in the new section).
- Click ‘Publish’
I would like to give huge props to John for helping me fix the code issues that I was having. He is a very big part of why this tutorial actually works so I highly recommend you check out his site to show appreciation for the help.
And there you have it!, you have now got a second blog in one single wordpress install, pretty neat huh?
Note: This can be repeated as many times as you like, you could have 5 different blogs in one wordpress install if you really wanted!
I hope you enjoyed this tutorial! and I hope it was easy to follow. If you have any problems with it, please don’t hesitate to ask in the comments!