Multiple WordPress Sidebars
wordpress
On this site that I have a slightly different sidebar for some of the main pages of the site as compared to the post pages. Using multiple sidebars in WordPress can be a great way to change the flow and design of your WordPress based website.
Some people use a hierarchy method in the naming of the template files to achieve this effect, but in my opinion it is too cumbersome for most user’s needs to do in that manor.
The method of multiple sidebars for WordPress that I am using on this site is a very simple PHP snippet added to the template to call the desired sidebar.php file depending on the area of the site that you are in.
I have created two sidebar files for the template and named them differently (for my example we will call the two files “sidebar_a.php” and “sidebar_b.php” to keep them separate (you may name these files anything you like).
In the standard template files, there is a small line of code that calls the sidebar content to the page. This line is typically found on the page.php file near the top; however, this may be in a different place depending on the template that you are using.
The line you are looking for looks like this:
<?php get_sidebar(); ?>
To call multiple WordPress sidebars and use a different sidebar on specific pages, you would need to change this line to the following:
<?php if (is_page(XX)) {include (‘sidebar_b.php’); }
else if (is_page(XX)) {include (‘sidebar_b.php’); }
else {include (‘sidebar_a.php’); }
?>* You must replace the “XX” above with the ID number of the page you want the sidebar to appear on.
Using this method will call the standard sidebar_a.php file to all pages, except for the pages that are specifically instructed to call the sidebar_b.php file.







Thanks for the info!
Comment by Anfisa — November 5, 2008 @ 8:26 pm
Thank you so much this made my life easier. If i was using wordpress MU will i still have to do that ?
web design seo’s last blog post… Pay Per Click Is it Worth It ?
Comment by web design seo — April 13, 2009 @ 9:09 am
did’nt work for me.
Warning: include(�sidebar2php�) [function.include]: failed to open stream: No such file or directory in C:\xampp\htdocs\wordpress\wp-content\themes\blue-skies\page.php on line 72
Warning: include() [function.include]: Failed opening ‘�sidebar2php�’ for inclusion (include_path=’.;C:\xampp\php\pear\’) in C:\xampp\htdocs\wordpress\wp-content\themes\blue-skies\page.php on line 72
I put the codes exactly alike just changing sidebar_a for sidebar1 and so..
Comment by J.Riley — April 20, 2009 @ 12:25 pm
I had the same problem as J. Riley.
First I realised that if you cut and paste (which I did) the single commas around the ‘sidebar_b.php’ have to be corrected.
Problem still persisted but after studying the WordPress codex on “is_page” that the ID also has to have single commas.
Works fine now
Comment by Tony Boyce — May 25, 2009 @ 2:42 pm
You might find this useful too:
http://blogcraving.com/sidebars-pages-wordpress-blog/
And there’s also a fully illustrated instruction set you can get by email. Provides a little more detail if the plain text version is hard to follow.
Travis Lusk’s last blog post… How To: Different Homepage and Single Post Sidebars
Comment by Travis Lusk — May 28, 2009 @ 9:30 pm
Your news is a cool stuff man, keep it going.
Comment by romonoeroetoko — July 15, 2009 @ 10:47 am
Hey man great post, I just CANNOT get the posts inside my category to also have the secondary sidebar that Im working on! any help please
Comment by Carlos — July 24, 2009 @ 6:03 am
My page sorry: http://revista-amauta.org/archives/category/tarro
Comment by Carlos — July 24, 2009 @ 6:04 am
I got it: All I had to do was go to single.php and place the code:
That way I got the same sidebar on the category main page and all the specific posts inside that category, thankx for the tutorial man!
Comment by Carlos — July 24, 2009 @ 1:55 pm
great post very informative
Comment by michael — July 30, 2009 @ 11:39 pm
That’s good man, keep it going.
Comment by amenodimeno — July 31, 2009 @ 10:52 am
Stunning blog and good article. High 5 for u man !
Comment by adamoerikom — September 19, 2009 @ 2:25 pm
This is a very good stuff man. But you can be more specific next time. See ya !
Comment by adamusxyz — January 6, 2010 @ 12:33 pm
You can also do
get_sidebar('example');, and WordPress will look for a file in your theme calledsidebar-example.php.Comment by Zack Katz — February 19, 2010 @ 10:15 am
Awesome Article, Really very informative posting which provide lots of informative in all the regards.thanks for the wonderful posting.
Comment by MBT lover — February 22, 2010 @ 12:59 am