パンくずをカスタム投稿タイプごとに親を設定できるようにした GPTサポートあり

<div class="pan_wrap">

    <div class="pan_wrap_width max1500">
        
        <div id="site_navi">
 <div>


 <?php if(is_tax())://1階層 ?>



                   
 <a href="/" >HOME</a>  &gt; 

  <?php  ///指定URL (設定ポストタイプ) か  アーカイブ か リンクなし か 
$taxonomy = get_queried_object() -> taxonomy; //tax_name取得
///echo $taxonomy; //qa_cate

$tax_obj  = get_taxonomy( $taxonomy ); //カスタムポストタイプを取得

    // echo "<pre>";
    // print_r($tax_obj);
    // echo "</pre>";
        //配列

if ( $tax_obj && ! empty( $tax_obj->object_type ) ) { //カスタムポストタイプがあるなら わまして、$post_typeに収納
  foreach ( $tax_obj->object_type as $post_type ) { //ここで$post_type生成

    $pt_obj = get_post_type_object( $post_type );//指定したポストタイプの「設定情報(オブジェクト)」を取得する関数
    if ( ! $pt_obj ) continue;//空ならスキップ

$label = $pt_obj->labels->name;//ラベル取得
$url   = get_post_type_archive_link( $post_type );// URL取得 has_archive これない場合

//ここまで準備??


//ここで設定の親URLを照らし合わせる
///カスタム投稿タイプ 
$breadcrumb_settings =  get_field("breadcrumb_settings",$site_con_id);

if($breadcrumb_settings)://////////////////////////////////////////url設定があれば

        $attaka = '0';//ループで回ったかチェック 定義

        foreach ( $breadcrumb_settings as $breadcrumb_setting ) {
    if ( $breadcrumb_setting['post_type'] === $post_type ) {
        // ここで分岐
                $attaka++;//回ればnullでなくなる

                $url = $breadcrumb_setting['parent_url'];

      echo '<a href="' . esc_url($url ) . '">';
      echo esc_html( $label );
      echo '</a>';
      echo ' &gt; ';

    }
}

if($attaka)://まわったらここでおわり

else://まわってないなら

    if ( $url ) : //アーカイブあり
      echo '<a href="' . esc_url( $url ) . '">';
      echo esc_html( $label );
      echo '</a>';
      echo ' &gt; ';

    else://アーカイブなし

        echo esc_html( $label );
         echo ' &gt; ';

      endif;//end //アーカイブあり

    endif;//endまわってないなら

     endif;//end    url設定があれば

  }}



?>

 <?php single_term_title( ); //アーカイブターム名を出力
?></div>



<?php elseif(is_category()): //1階層?>

                <a href="/" >HOME</a>  &gt; <?php single_term_title( ); //アーカイブターム名を出力
?></div>           
        
        
<?php else: ?>       
            
<div>
 <a href="/" >HOME</a> <?php if(is_singular('newlybuilt')):?> &gt; <a href="/<?php echo $jisseki_name ?>/"><?php echo $jisseki_name ?></a><?php endif; ?> &gt; <?php $title_name = get_the_title(); echo $title_name ; ?></div>
            
   <?php endif; ?>         
            

 
   

</div>
        </div>
</div>

https://chatgpt.com/share/696600a5-2e54-8010-9e95-b7da048328f0

https://chatgpt.com/share/696600e6-c92c-8010-8fb8-77994522f091

 

0_control_cutom_post_type