Site redesign

So anyone visiting might have noticed a new theme for this site. I’m going to be doing a complete overhaul in a few weeks time, but I thought I would start...

So anyone visiting might have noticed a new theme for this site. I’m going to be doing a complete overhaul in a few weeks time, but I thought I would start using the theme that I am going to be modifying in order to get a feel for it.

Fireworks

For anybody unlucky enough to not live in Vancouver, here are some photos and a video that I took from English Bay at the 2008 HSBC celebration of light finale. The...

For anybody unlucky enough to not live in Vancouver, here are some photos and a video that I took from English Bay at the 2008 HSBC celebration of light finale. The HSBC celebration of light is a 4 million dollar show that is put on every year at English Bay in Vancouver. It runs over four nights and each night has over half an hour of fireworks. The rest of the pictures can be found on my flickr

Fireworks by you.Fireworks by you.Fireworks by you.Fireworks by you.Fireworks by you.Fireworks by you.Fireworks by you.Fireworks by you.Fireworks by you.Fireworks by you.

Zemanta Pixie

WordPress as a CMS… Advanced Navigation

photo credit: drustar One of the things that is starting to happen at OLT is that we are creating an increasing number of WordPress based websites. Using WordPress as a content...

Wordpress
Creative Commons License photo credit: drustar

One of the things that is starting to happen at OLT is that we are creating an increasing number of WordPress based websites. Using WordPress as a content management system is not a new idea at all, there are a ton of examples out there of WordPress blogs out there that have been turned into sites. There is however, a dearth of information out there on how to do it (there are some out there… including some in amazing detail from Alan Levine).

One of the things that I couldn’t find was a stable way to create a second level navigation that stays constant for every top level section. The problem with most of the solutions on the forums and sites around is that as soon as you drill down to the third level of navigation the second level disappears. As you can see at aboriginal.ubc.ca I was able to come up with a way to keep the navigation constant. Here is the loop that I had to create:

<?php
$secondAncestor = count($post->ancestors) -1; //figure out what level of navigation we are on, subtract one because we don't want to consider the top-level
if($post->post_parent!=0) //if the page is not a top-level category
{
echo '<h2 class="widgettitle">In this section:</h2><li class="sidebarlist">';
//the following lists children of second level ancestor of the current page.
wp_list_pages("title_li=&child_of=".$post->ancestors[$secondAncestor]."&    sort_column=menu_order&echo=1");
echo '</li>';
}
else //if the page is a top-level category
{
//listing only the child pages of the current section
$children= wp_list_pages("title_li=&child_of=".$post->ID."&  sort_column=menu_order&echo=0");
if($children) //this will stop it from displaying a section heading if there are   no elements in the section (for example on the home page)
{
echo '<h2 class="widgettitle">In this section:</h2><li>';
echo $children;

echo '</li>';

}
}
?>


This is the first time I’ve blogged code, I’m not even sure if it is readable… but here’s hoping. Basically I figure out what level of navigation the user is on and then list the pages of the current page’s ancestor… that many levels up (subtracting one for the top level navigation.

I am currently doing a lot of work on using WordPress as a content management system including coming up with plugins and modifications for using WordPress MU as a multi-site manager used purely for websites and not for blogs. Will blog it all once everything is stable and working.

Zemanta Pixie