我是靠谱客的博主 拼搏乐曲,最近开发中收集的这篇文章主要介绍wordpress5.3主题开发第十二课:面包屑导航,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

面包屑导航经常用于网页,见下面的示例

 

 

实现方式:

  1. 使用自定义函数
  2. 使用第三方插件

使用自定义函数(这样的函数很多,写法大同小异)

在functions.php文件中写下如下代码

//面包屑导航
function get_breadcrumbs()
{
    global $wp_query;

    if ( !is_home() ){

        // Start the UL
        echo '<ul class="breadcrumbs">';
        // Add the Home link
        echo '<li><a href="'. get_settings('home') .'">'. get_bloginfo('name') .'</a></li>';

        if ( is_category() )
        {
            $catTitle = single_cat_title( "", false );
            $cat = get_cat_ID( $catTitle );
            echo "<li> &raquo; ". get_category_parents( $cat, TRUE, " &raquo; " ) ."</li>";
        }
        elseif ( is_archive() && !is_category() )
        {
            echo "<li> &raquo; Archives</li>";
        }
        elseif ( is_search() ) {

            echo "<li> &raquo; Search Results</li>";
        }
        elseif ( is_404() )
        {
            echo "<li> &raquo; 404 Not Found</li>";
        }
        elseif ( is_single() )
        {
            $category = get_the_category();
            $category_id = get_cat_ID( $category[0]->cat_name );

            echo '<li> &raquo; '. get_category_parents( $category_id, TRUE, " &raquo; " );
            echo the_title('','', FALSE) ."</li>";
        }
        elseif ( is_page() )
        {
            $post = $wp_query->get_queried_object();

            if ( $post->post_parent == 0 ){

                echo "<li> &raquo; ".the_title('','', FALSE)."</li>";

            } 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 '<li> &raquo; <a href="'. get_permalink($ancestor) .'">'. strip_tags( apply_filters( 'single_post_title', get_the_title( $ancestor ) ) ) .'</a></li>';
                    } else {
                        echo '<li> &raquo; '. strip_tags( apply_filters( 'single_post_title', get_the_title( $ancestor ) ) ) .'</li>';
                    }
                }
            }
        }

        // End the UL
        echo "</ul>";
    }
}

然后在category.php或page.php, single.php页面添加如下代码:

<?php if (function_exists('get_breadcrumbs')){get_breadcrumbs(); } ?>

使用第三方插件实现面包屑

我们直接在WordPress程序网站后台插件处搜索"Breadcrumb NavXT",然后下载和激活。

后台设置面包屑的样式:

 

面包屑导航中第一项默认显示网站标题,按照下面的办法可改成”首页“

 

设置完成后,在模板中写下如下代码:

<?php if(function_exists('bcn_display'))
{
    bcn_display();
}?>

 

最后

以上就是拼搏乐曲为你收集整理的wordpress5.3主题开发第十二课:面包屑导航的全部内容,希望文章能够帮你解决wordpress5.3主题开发第十二课:面包屑导航所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部