How to Easily Add WordPress Breadcrumb Trail

Handy code to add Wordpress breadcrumb trail in your templates to output a breadcrumb trail and navigation links on your blog.

By Tim Trott | WordPress | January 24, 2009

I did not write this WordPress breadcrumb trail function, however, it's one of the ones in my global functions.php which is used on most of my sites. I cannot remember where I got it from or who wrote it.

php
function breadcrumbTrail($crumbs = true, $title = 'Browse', $separator = '/') 
{
  global $post;
?>
  <div class="breadcrumbs">
<?php
  if($title !== 'Browse') 
    echo $title;
  else 
    _e('Browse','options');
    
?>: <a href="<?php bloginfo('url'); ?>" title="<?php bloginfo('name'); ?>"><?php _e('Home','options'); ?></a> <?php echo $separator; ?>
<?php
  
  if(is_single()) :
    the_category(', '); echo ' ' . $separator . ' ';
  elseif(is_page()) :
    $parent_id = $post->post_parent;
    $parents = array();
    while($parent_id) :
      $page = get_page($parent_id);
      if($params["link_none"]) 
        $parents[] = get_the_title($page->ID);
      else 
        $parents[]  = '<a href="'.get_permalink($page->ID).'" title="'.get_the_title($page->ID).'">'.get_the_title($page->ID).'</a> ' . $separator . ' ';
      $parent_id  = $page->post_parent;
    endwhile;
  
    $parents = array_reverse($parents);
    foreach($parents as $val) :
      echo $val;
    endforeach;
  endif;
  the_title(); 
?>
  </div>
<?php
}

To use this function simply make a call to breadcrumbTrail() in the template where you wish to show the WordPress Breadcrumb Trail.

Was this article helpful to you?
 

Related ArticlesThese articles may also be of interest to you

CommentsShare your thoughts in the comments below

If you enjoyed reading this article, or it helped you in some way, all I ask in return is you leave a comment below or share this page with your friends. Thank you.

This post has 2 comment(s). Why not join the discussion!

We respect your privacy, and will not make your email public. Learn how your comment data is processed.

  1. CU

    On Friday 20th of November 2009, curt said

    Great Work! I've just looking for this code. Only pages breadcrumb trails functionality. BreadcrumbXT doesn't help me in my case.
    Thanks.

  2. ZS

    On Thursday 29th of October 2009, zachary smith said

    YES! This works perfectly! I just just yelled 'YES' a few times and did a celebratory walk around my apartment.