(This tutorial is specifically for the Thesis theme, but can be adapted to work with any WordPress theme).
When building a website using WordPress, you’ll often have a piece of content that doesn’t fit into a post or page; for example, an “Additional Information” box that appears above the sidebars on a specific page. There are many approaches you could take:
- Code it directly into the template files, which should only be done if the content won’t need to be changed (example: a footer on a website).
- Include it as a custom field on a post or page. This is best for content that is page/post-specific, but found on almost every post or page (example: Photographer’s name associated with the post’s header image).
- Build an additional sidebar. This is best for something that’s repeated often and/or needs to be easily editable.
I’m going to focus on the last approach using additional sidebars.
First you need to create an additional sidebar, then include it somewhere in your site, and finally populate it with content.
Creating an Additional Sidebar
In your custom_functions.php file, include the following code:
register_sidebars(1,
array(
'name' => 'Additional Sidebar',
'before_widget' => '<li id="%1$s">',
'after_widget' => '</li>',
'before_title' => '<h3>',
'after_title' => '</h3>'
)
);
That will create a new sidebar titled “Additional Sidebar,” with the appropriate default parameters (which you can change if you like).
Include in Site
Since we’re working with Thesis, I’ll make a custom function that displays the additional sidebar and stick it after the existing sidebars using add_action.
function custom_sidebar(){?>
<div id="sidebar_3"><ul>
<?php dynamic_sidebar('Additional Sidebar'); ?>
</ul></div>
<?php
}
add_action('thesis_hook_after_sidebars','custom_sidebar');
You could use any of the hooks to stick it wherever you’d like.
Populate the sidebar with content
From your wp-admin area, go to Appearance > Widgets. You should see all of your sidebars displayed on the right side, and your choice of widgets on the left. If you just want text in this sidebar, drag the Text widget over to “Additional Sidebar” and fill it with your title and content. Once you save it, your sidebar should be ready to view on your site.
You can customize the look and feel of it using custom.css, Thesis’ CSS file. In the above example, I put the sidebar in a div titled “sidebar_3″, so I can modify it by using .custom #sidebar_3.
- Adding “nofollow” to Category Links
- Thesis Tip #18 – Full Width Navigation
- Thesis Tip #17 – Adding Content Between Posts
- Thesis Tip #16 – Redirect Pages
- Thesis Tip #15 – Custom Author Pages
- Thesis Tip #14 – Add Related Posts Before Comments Link
- Thesis Tip #13 – Using Gravatars in WordPress
- Thesis Tip #12 – Adding Custom Headers to Category Pages
- Thesis Tip #11 – Clickable Logo in Header
- Thesis Tip #10 – Filter Categories from Homepage
- Thesis Tip #9 – Custom Options Page
- Thesis Tip #8 – Change Next and Previous Post Text
- Thesis Tip #7 – Import and Export Your Design
- Thesis Tip #6 – Print Stylesheets
- Thesis Tip #5 – Featured Content Rotator
- Thesis Tip #4 – Adding Classes to Body
- Thesis Tip #3 – Multiple content areas
- Thesis Tip #2 – Additional Sidebars
- Thesis Tip #1 – Custom Images and Category Pages
Bill Erickson is a WordPress Consultant who builds custom websites using WordPress as a CMS and Thesis or Genesis as a framework. He’s a cofounder and resident of The Creative Space, and a cofounder of the BIL Conference (the open analog to the TED Conference).

{ 7 comments… read them below or add one }
I'm a major Thesis Theme fan. Glad to find another resource for tips
My solution for additional sidebars on specific pages: I use the Widget Logic plugin and conditional tags. After installation, you drag a widget to the sidebar. An extra Widget Logic field will appear. To add a widget to a single page, you simply enter
is_page('pagename')
And to make it appear on multiple pages, enter
is_page(array('firstpage','secondpage','thirdpage'))
You have saved my blog! I have been scrounging sooo many tutorials on how to put only 1 category of posts on a given page. Your code and instructions worked. Took me a time or two to get the details right but it was dead on and works perfectly. Now I just have to decided how I want the formatting to look and it'll be done (oh, yeah…and write some more posts for other categories!).
Great! I'm glad it worked for you.
Thanks for your tip.
I struggle a bit to implement it, mostly because I am new to Wordpress. So I wanted to share some of the think I learned.
To find the category ID, see http://www.wprecipes.com/how-to-find-wordpress-ca...
The code you are giving is to be added to custom_functions.php under custom folder under your thesis folder.
Hey, I wanted to also share with you that I used the Thesis Openhook plugin to implement Bill tip.
I highly recommend it.
You simply need to past the content of "function custom_cat_page()" in the thesis_hook_after_post field.
Hi thanks a bunch for this tutorial!!
I got the new sidebar installed on my thesis blog, but right now the prob is the fonts appear to be smaller than usual in this new sidebar. Is there a way to correct it?
I am using a 3 column layout and this new sidebar is above the 2 sidebars.
If possible I want this new sidebar to have the same font as the default thesis sidebars?
Change this: add_action('thesis_hook_after_sidebars','custom_sidebar');
To this: add_action('thesis_hook_footer','custom_sidebar');