[記事公開日]2019/02/03

【WordPress】functions.phpに書くこと

 

「functions.php」にはパンくずリストのコードを書きます。

スポンサーリンク  

 

一番下に追記します。

 

// ***********************************************************************************

// パンくずリスト

// ***********************************************************************************




function breadcrumb(){

    global $post;

    $str ='';

    if(!is_home()&&!is_admin()){

        $str.= '<div id="breadcrumb" class="cf"><span itemscope itemtype="http://data-vocabulary.org/Breadcrumb">';

        $str.= '<a href="'. home_url() .'" itemprop="url"><span itemprop="title"><i class="fa fa-home"></i> ホーム</span></a> &gt; </span>';




        if(is_category()) {

            $cat = get_queried_object();

            if($cat -> parent != 0){

                $ancestors = array_reverse(get_ancestors( $cat -> cat_ID, 'category' ));

                foreach($ancestors as $ancestor){

                    $str.='<span itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_category_link($ancestor) .'" itemprop="url"><span itemprop="title">'. get_cat_name($ancestor) .'</span></a> &gt; </span>';

                }

            }

        $str.='<span itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_category_link($cat -> term_id). '" itemprop="url"><span itemprop="title">'. $cat-> cat_name . '</span></a> &gt; </span>';

        } elseif(is_page()){

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

                $ancestors = array_reverse(get_post_ancestors( $post->ID ));

                foreach($ancestors as $ancestor){

                    $str.='<span itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_permalink($ancestor).'" itemprop="url"><span itemprop="title">'. get_the_title($ancestor) .'</span></a> &gt; </span>';

                }

            }

        } elseif(is_single()){

            $categories = get_the_category($post->ID);

            $cat = $categories[0];

            if($cat -> parent != 0){

                $ancestors = array_reverse(get_ancestors( $cat -> cat_ID, 'category' ));

                foreach($ancestors as $ancestor){

                    $str.='<span itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_category_link($ancestor).'" itemprop="url"><span itemprop="title">'. get_cat_name($ancestor). '</span></a> &gt; </span>';

                }

            }

            $str.='<span itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_category_link($cat -> term_id). '" itemprop="url"><span itemprop="title">'. $cat-> cat_name . '</span></a> &gt; </span>';

        } else{

            $str.='<div>'. wp_title('', false) .'</div><br/>';

        }

        $str.='</div><br/>';

    }

    echo $str;

}

 

以上です。