I build a fair number of WordPress sites on small budgets for my employer, Union Street Media. Sometimes I need to give our clients an editable region in the sidebar, away from the main blog/page content. Here’s a quick and dirty trick I use to pull a page into a theme outside of the loop:
<?php // must use a variable for page id // http://codex.wordpress.org/Function_Reference/get_page $id = 3; $p = get_page($id); echo apply_filters('the_content', $p->post_content); ?>
You can get your page ID by editing the page. It will show up in the url (the ‘post=x’ portion.) It’s important to note that you have to pass a variable to the
get_page() function. If you just pass an integer it will throw a fatal error. No need to go into why that is; just keep it in mind.
get_page() essentially wraps
get_post() so that function’s documentation is a good place to start if you want to learn what’s available to you.
This isn’t a particularly pretty solution, but it’s quick and it works well provided you know your page IDs and you’re not making a theme for distribution. I like to name my page something like ‘**Sidebar Content’ so it is easy to differentiate from regular pages.