WordPress的面包屑问题
我的网站有一个面包屑导致工作不正常。 当我去像一个产品
Equipment» Products» Railing» Heavy Railing» Waterproof» Superrail 2000
它正确显示了这个面包屑。 但是,当我通过“非防水”而不是“防水”到达同一产品时,它向我展示了同样的面包屑(基本上,它只包含1个类别)。
我想在我的面包屑插件的设置中查看它,但它向我显示消息“您的设置已过期,现在正在迁移。”,而且我的主管建议我不要“迁移”它。
有没有人有解决方案使用插件或自定义代码与多个类别一起使用?
编辑:
我正在使用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>
链接地址: http://www.djcxy.com/p/39185.html