Wordpress面包屑问题


Wordpress breadcrumbs issue

我的网站上有一个不能正常工作的面包屑。当我打开

这样的产品

Equipment» Products» Railing» Heavy Railing» Waterproof» Superrail 2000

它正确地显示了这个面包屑。然而,当我通过"非防水"而不是"防水"进入同一产品时,它显示的是相同的面包屑(所以基本上,它只跟随一个类别)。

我想在我的breadcrumb插件的设置中检查这一点,但它向我显示消息"您的设置已过期。,我的主管建议我不要"迁移"它。

是否有人有一个解决方案,使用插件或自定义代码与多个类别的工作?

编辑:

我正在使用WP 3.6,我不允许更新。URL看起来类似于http://www.website.com/product/asl6109t32/,这意味着我不能使用URL来生成面包屑。

如果可以的话,这里有一些用于创建面包屑导航的漂亮代码片段,将其放在主题的functions.php文件中:

/*********************************************************** 
* wsf_breadcrumbs() - Shows breadcrumbs in template 
***********************************************************/  
function wsf_breadcrumbs( $sep = '/', $label = 'Browsing' ) {  
    global $post, $front_page;  
   // Do not show breadcrumbs on home or front pages.  
   // So we will just return quickly  
   if((is_home() || is_front_page()) && (!$front_page))  
      return;  
    // Create a constant for the separator, with space padding.  
    $SEP = ' ' . $sep . ' ';  
  echo '<div class="breadcrumbs">';  
  echo $label;  
  echo wsf_make_link( home_url(), 'Home', get_bloginfo('name'), true ) . $SEP;  
  if(is_single()) {  
    the_category(', '); echo $SEP;   
  } 
    elseif (is_search()) {
        echo 'Search results - ';
    } 
    elseif (is_404()) { //Wordpress bug
        echo 'Error 404 (Page not found) '; 
    }
    elseif (is_author()) {
        echo 'Articles posted by author ';
    }
    elseif (is_tag()) { 
        echo 'Posts tagged ';
    }
    elseif (is_year()) {
        echo get_the_time('Y');
    }
  elseif (is_month()) {
        echo get_the_time('F').' ('.get_the_time('Y').')';
    }
    elseif (strstr($_SERVER['REQUEST_URI'],"wp-login.php")) {
        echo 'Administration panel';
    }

    elseif(is_page()) {  
        $parent_id = $post->post_parent;  
        $parents = array();  
        while($parent_id) {  
                $page = get_page($parent_id);  
        $parents[]  = wsf_make_link( get_permalink($page->ID), get_the_title($page->ID) ) . $SEP;  
                $parent_id  = $page->post_parent;  
        }  
        $parents = array_reverse($parents);  
    foreach($parents as $parent) {  
       echo $parent;  
    }  
  }  
   // Wordpess function that echoes your post title.  
  the_title();  
  echo '</div>';  
}  
/*------------------------------------------------------*/
/* Create breadcrumb navigation
/*------------------------------------------------------*/
/*********************************************************** 
* Helper Functions for template coding 
***********************************************************/  
function wsf_make_link ( $url, $anchortext, $title=NULL, $nofollow=false ) {  
   if ( $title == null ) $title=$anchortext;  
   $rel = ($nofollow == true) ? ' rel="nofollow"' : $rel = '';   
   $link = sprintf( '<a href="%s" title="%s" %s>%s</a>', $url, $title, $rel, $anchortext );  
   return $link;   
}  
/*------------------------------------------------------*/
/*------------------------------------------------------*/

然后,在您的footer.php文件中,像这样调用函数:

<div id="breadcrumb">
 <?php wsf_breadcrumbs('','') ?>  
</div>