PHP wordpress面包屑

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP wordpress面包屑相关的知识,希望对你有一定的参考价值。

function the_breadcrumb($before_text = 'You are here:', $home = false) {
    $breads = array();
    if(is_home() && $home != false){
        $breads['home'] = 'Home';
    } else {
        if (get_post_type() && get_post_type() != 'page' && get_post_type() != 'post' ) {
            $breads['post_type'] = get_post_type();
        } elseif (get_post_type() == 'post') {
            $breads['blog'] = 'Blog';
        } elseif (get_post_type() == 'page') {
            $breads['page'] = get_the_title();
        }
        if (is_category() || is_single()) {
            foreach((get_the_category()) as $category) { 
                $breads['category'][] = $category->cat_name; 
            }
            if (is_single()) {
                $breads['single'] = get_the_title();
            }
        }
        elseif (is_tag()) { $breads['tags'] = single_tag_title();}
        elseif (is_day()) { $breads['archive'] = "Archive for "; the_time('F jS, Y');}
        elseif (is_month()) { $breads['archive'] = "Archive for "; the_time('F, Y');}
        elseif (is_year()) { $breads['archive'] = "Archive for "; the_time('Y');}
        elseif (is_author()) {$breads['author_archive'] = "Author Archive";}
        elseif (isset($_GET['paged']) && !empty($_GET['paged'])) {$breads['blog_archive'] = "Blog Archives";}
        elseif (is_search()) {$breads['search'] = "Search Results";}
    }

    echo $before_text . ' ';
    $breadItems = count($breads);
    $i = 0;
    $b = '';
    foreach ($breads as $key => $bread) {
        $i++; 
        if ($i == $breadItems) {
            $active = 'active';
        }
        $b .= '<span class="bread_item bread_item_' . $key . ' ' . $active . '">';
            if ($key == 'home') {
                $b .= '<a href="' . get_option('home') . '">' . $bread . '</a>';
            } elseif($key == 'category') {
                foreach ($breads['category'] as $cat) {
                    $cats = $cat . '/ ';
                }
                $b .= rtrim($cats, '/ ');
            } else {
                $b .= $bread;
            }
        $b .= '</span> » ';
    }
    echo rtrim($b, ' » ');
}

以上是关于PHP wordpress面包屑的主要内容,如果未能解决你的问题,请参考以下文章

PHP Wordpress:没有插件的面包屑

PHP 面包屑Wordpress

PHP 如何:Wordpress的面包屑功能

PHP wordpress面包屑

PHP Wordpress面包屑

php 覆盖面包屑 - Yoast SEO WordPress插件