This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Per Page Sidebar Blocks


Background and goals of this plugin

Part of offering WordPress as a CMS to my clients involves giving them as much control over the future of their website as possible. One pitfall I experience is offering per-page sidebar customization.

Sidebar templates and conditionals

I find myself creating several sidebar-name.php templates and using conditionals to display them where I want. Functions like is_page(), is_tree(), is_ancestor(), is_single(), etc. let me plan ahead for which sidebars should show on which pages. However, is_page(14) is not an acceptable solution for me, nor does it truly allow customizing sidebar output for pages created in the future outside the scope of my preemptive conditionals.

Page-specific blocks of content in the sidebar

Per Page Sidebar Blocks lets you, the theme developer, create several sidebar templates using WordPress’ naming convention sidebar-name.php.

Automatically finds your sidebar templates

PPSB will scan the current theme’s root directory for all your sidebar templates and let you decide which ones get displayed on each individual page by simply checking a box on that page’s Edit area.

More Information

A full writeup is available at

Known Bugs

  1. If you create a new page and check some PPSB boxes, the checks will not save if the page is published. You must check the boxes after the page is published and save again.


  • Specify which sidebar blocks show per page
  • Drag and drop to set the display order of sidebar blocks


  1. Upload the ‘per-page-sidebars’ folder to the ‘/wp-content/plugins/’ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Put the following code into your sidebar.php file: <?php if( function_exists( ‘ppsb_show_sidebars’ ) ) echo ppsb_show_sidebars(); ?>
  4. Create necessary sidebar templates using WordPress’ naming convention sidebar-name.php
  5. Specify display order of sidebars in Settings > Per Page Sidebar Blocks
  6. Check boxes in page editor to display those sidebars


Why is this sidebar plugin different?

Instead of simply letting you select a full sidebar for a page (which you could certainly setup using this plugin), I go a step further and let you create different blocks of content. Let’s say your client has a list of Company Partner’s logos, and they want to list them on the About and Services pages. Rather than create a specific sidebar for each of those pages, create a sidebar-partners.php block and just enable it on every page it’s needed; use sidebar templates as building blocks to customize sidebar content as needed.


There are no reviews for this plugin.

Contributors & Developers

“Per Page Sidebar Blocks” is open source software. The following people have contributed to this plugin.




  • Bug fix when reordering on PPSB Settings page


  • Bug fix Undefined variable on line 160


  • Bug fix when no sidebars available


  • Initial release