wordpress面包屑导航
编辑整理:整理来源:360问答,浏览量:62,时间:2023-02-24 16:45:02
wordpress面包屑导航,wordpress面包屑导航显示方式,移动端 面包屑导航
关于wordpress面包屑导航内容导航:
1、wordpress面包屑导航
WordPress面包屑导航是一种用于帮助用户在网站中浏览的导航方式,它可以显示用户当前所在的位置,以及他们可以访问的其他页面。
WordPress面包屑导航可以使用插件或主题来实现,也可以使用PHP代码来实现。插件和主题可以让用户轻松地定制面包屑导航,而使用PHP代码则需要用户有一定的编程知识。
2、wordpress面包屑导航插件
1、层级较深的网站,面包屑导航适合层级较深的网站,如果只有一级分类的话,通过主导航就可以起到快速定位的吃笔仍洲械山质境刘作用。比如“豆瓣网血雷宗找”类型扁平构架的网站就没有使用面包屑导航的作用。
2、独立不交叉的网站机构,由于来自面包屑网站导航路径是线性结构的,因此网站内容必须划分的非常清晰,且不存在交叉;否则,面包屑导航的路径就不是唯一的,同一分类可能出现在不同的路径中,让用户感到困惑。
在wordpress中添加面包屑导航的话,可以直接使用插件来实现,不过很多站长都不喜欢用插件,还是认为如果能用代码解决的话是最理想的。者料我最近也找了一些关于面包屑导航的资料。下文中就有详细解决怎么用代码来实现wordpress面包屑导航:
一、在wordpress盐标华技校参最卷接类每博客当前主题的functions.php文件(没有就创建一个)中添加以下代码:
//面包屑导航
function get_breadcrumbs()
{
global $wp_query;
if ( !is_home() ){
// Start the UL
echo '<u约获千关副这时境城l class="breadcrumbs">';
// Add the Home link
echo '<li><a href="'. get_settings('home') .'">'. get_bloginfo('name') .'</a></li>';
if ( is_category() )
{
$catTitle = single_c厚买让水两顶距洋期传末at_title( "", false );
$cat = get_ca者械概t_ID( $catTi仅境没升一食tle );
echo "<li> » ". get_category_parents( $cat, TRUE, " » " ) ."</li>";
}
elseif ( i自步十和胶便安调探苦育s_archive() && !is_category() )
{
echo "<li> » Archives</li>";
}
elseif ( is_search() ) 移权就{
echo "<li> » Sear庆文断吗晶坚率兰保持ch Results</li>";
}
elseif ( is_404() )
{
echo "<li> » 404 Not Found</li>";
}
elseif ( is_single() )
{
$category = get_the_category();
$category_id = get_cat_ID( $category[0]->cat_name );
echo '<li> » '. get_category_parents( $category_id, TRUE, " » " );
echo the_title('','', FALSE) ."</li>";
}
e旧湖取以他lseif ( is_page(电相史) )
{
$post = $wp_query->get_queried_objec与压室原某低们乎t();
if ( $post底青举回写绝销停法->post_parent == 0 ){
echo "<li> » ".the_title('','', FALSE)."</li>";
} else {
$title = the_tit风积国视心述陈商端代审le('','', FALSE);
$ancestors = array_reverse( get_post_ancestors( $post->ID ) );
array_push景蒸宣孔夜了误想投序($ancestors, 数发待补运牛$post->ID);
foreach ( $ancestors as $ancestor ){
if( $ancestor != end($ancestors) ){
echo '<li> » <a href="'. get_permalink($ancestor) .'">'. strip_tags( apply_filters( 'single_post_title', get_the_title( $ancestor ) ) ) .'</a></li>';
} else {
echo '<li> » '. strip_tags( apply_filters( 'single_post_title', get_the_title( $ancestor ) ) ) .'</li>';
}
}
}
}
// End the UL
echo "</ul>";
}
}
二、在显示面包屑导航的位置添加以下调用代码:
<?php
if (function_exists('get_breadcrumbs')){
get_breadcrumbs();
}
?>
三、在主题的css样式文件中添加以下样式代码:
ul.breadcrumbs {list-style: none; font-size:12px;}
ul.breadcrumbs li {float: left; margin-right:5px;}
3、wordpress面包屑导航显示方式
1、层级较深的网站,面包屑导航适合层级较深的网站,如果只有一级分类的话,通过主导航就可以起到快速定位的作用。比如“豆瓣网”类型扁平构架的网站就没有使用面包屑导航的作用。
2、独立不交叉的网站机构,由于面包屑网站导航路径是线性结构的,因此网站内容必须划分的非常清晰,且不存在交叉;否则,面包屑导航的路径就不是唯一的,同一分类可能出现在不同的路径中,让用户感到困惑。
在wordpress中添加面包屑导航的话,可以直接使用插件来实现,不过很多站长都不喜欢用插件,还是认为如果能用代码解决的话是最理想的。我最近也找了一些关于面包屑导航的资料。下文中就有详细解决怎么用代码来实现wordpress面包屑导航:
一、在wordpress博客当前主题的functions.php文件(没有就创建一个)中添加以下代码:
//面包屑导航
function get_breadcrumbs()
{
global $wp_query;
if ( !is_home() ){
// Start the UL
echo '';
// Add the Home link
echo ''. get_bloginfo('name') .'';
if ( is_category() )
{
$catTitle = single_cat_title( "", false );
$cat = get_cat_ID( $catTitle );
echo " » ". get_category_parents( $cat, TRUE, " » " ) ."";
}
elseif ( is_archive() && !is_category() )
{
echo " » Archives";
}
elseif ( is_search() ) {
echo " » Search Results";
}
elseif ( is_404() )
{
echo " » 404 Not Found";
}
elseif ( is_single() )
{
$category = get_the_category();
$category_id = get_cat_ID( $category[0]->cat_name );
echo ' » '. get_category_parents( $category_id, TRUE, " » " );
echo the_title('','', FALSE) ."";
}
elseif ( is_page() )
{
$post = $wp_query->get_queried_object();
if ( $post->post_parent == 0 ){
echo " » ".the_title('','', FALSE)."";
} else {
$title = the_title('','', FALSE);
$ancestors = array_reverse( get_post_ancestors( $post->ID ) );
array_push($ancestors, $post->ID);
foreach ( $ancestors as $ancestor ){
if( $ancestor != end($ancestors) ){
echo ' » '. strip_tags( apply_filters( 'single_post_title', get_the_title( $ancestor ) ) ) .'';
} else {
echo ' » '. strip_tags( apply_filters( 'single_post_title', get_the_title( $ancestor ) ) ) .'';
}
}
}
}
// End the UL
echo "";
}
}
二、在显示面包屑导航的位置添加以下调用代码:
if (function_exists('get_breadcrumbs')){
get_breadcrumbs();
}
?>
三、在主题的css样式文件中添加以下样式代码:
ul.breadcrumbs {list-style: none; font-size:12px;}
ul.breadcrumbs li {float: left; margin-right:5px;}
在模版里制作functions.php,将以下代码放进去function wheatv_breadcrumbs() {
$delimiter = ' > ';
$name = '首页'; //
if ( !is_home() ||!is_front_page() || is_paged() ) {
global $post;
$home = get_bloginfo('url');
echo '<a href="' . $home . '" >' . $name . '</a> ' . $delimiter . ' ';
if ( is_category() ) {
global $wp_query;
$cat_obj = $wp_query->get_queried_object();
$thiscat = $cat_obj->term_id;
$thiscat = get_category($thiscat);
$parentcat = get_category($thiscat->parent);
if ($thiscat->parent != 0) echo(get_category_parents($parentcat, true, ' ' . $delimiter . ' '));
echo single_cat_title();
} elseif ( is_day() ) {
echo '<a href="' . get_year_link(get_the_time('y')) . '" >' . get_the_time('y') . '</a> ' . $delimiter . ' ';
echo '<a href="' . get_month_link(get_the_time('y'),get_the_time('m')) . '" >' . get_the_time('f') . '</a> ' . $delimiter . ' ';
echo get_the_time('d');
} elseif ( is_month() ) {
echo '<a href="' . get_year_link(get_the_time('y')) . '" >' . get_the_time('y') . '</a> ' . $delimiter . ' ';
echo get_the_time('f');
} elseif ( is_year() ) {
echo get_the_time('y');
} elseif ( is_single() ) {
$cat = get_the_category(); $cat = $cat[0];
echo get_category_parents($cat, true, ' ' . $delimiter . ' ');
echo "正文";
} elseif ( is_page()||!$post->post_parent ) {
the_title();
} elseif ( is_page()||$post->post_parent ) {
$parent_id = $post->post_parent;
$breadcrumbs = array();
while ($parent_id) {
$page = get_page($parent_id);
$breadcrumbs[] = '<a href="http://www.wheatv.com/site/wp-admin/ . get_permalink($page->id) . " >' . get_the_title($page->id) . '</a>';
$parent_id = $page->post_parent;
}
$breadcrumbs = array_reverse($breadcrumbs);
foreach ($breadcrumbs as $crumb) echo $crumb . ' ' . $delimiter . ' ';
the_title();
} elseif ( is_search() ) {
echo get_search_query();
} elseif ( is_tag() ) {
echo single_tag_title();
} elseif ( is_author() ) {
global $author;
$userdata = get_userdata($author);
echo '由'.$userdata->display_name.'发表';
} elseif ( is_404() ) {
echo '404 错误';
}
if ( get_query_var('paged') ) {
if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ' (';
echo '第' . ' ' . get_query_var('paged').' 页';
if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ')';
}
}else{
echo $name;
}
}
最后在single.php里用 <?php wheatv_breadcrumbs(); ?> 调用
行业热门话题:
【wordpress面包屑导航插件】【wordpress面包屑导航显示方式】【面包屑导航样式】【面包屑导航vue】【面包屑导航栏是什么】【web 面包屑】【什么是面包屑导航,面包屑导航的特点有哪些?】【面包屑导航的定义和作用】【网站 面包屑】【移动端 面包屑导航】
wordpress面包屑导航完!