0

Tell me how to set the full path in bread crumbs in CPT UI.

I have - Post type and taxonomy

The code prints in breadcrumbs - / Taxonomy / Name, how to do what would print Post type / Taxonomy / Name?

function the_breadcrumb() {
     global $post;
     if (!is_front_page()) {
        echo '<li><a href="';
        echo get_option('home');
        echo '">Главная';
        echo "</a></li> ";
        if (is_category() || is_single() || is_tax()) {

             $categories = wp_get_post_terms( $post->ID, "tip" );
             if (empty($categories)) {$categories = get_the_category();}
             echo '<li'.((is_single())?'><a href="'.
             esc_url(get_term_link($categories[0]->slug,$categories[0]->taxonomy)) . '">':' class="active">');
             echo esc_html($categories[0]->name);
             echo ((is_single())?'</a>':'').'</li>';
             if (is_single()) {
                echo '<li class="active">';
                the_title();
                echo "</li>";

              }
         } elseif (is_page()) {
            // Standard page
            if( $post->post_parent ){ 

            // If child page, get parents 
            $anc = get_post_ancestors( $post->ID );

            // Get parents in the right order
            $anc = array_reverse($anc);

            // Parent page loop
            if ( !isset( $parents ) ) $parents = null;
            foreach ( $anc as $ancestor ) {
                $parents .= '<li><a href="' . get_permalink($ancestor) . '" title="' . get_the_title($ancestor) . '">' . get_the_title($ancestor) . '</a></li>';

            }

            // Display parent pages
            echo $parents;

            // Current page
            echo '<li class="active">'. get_the_title() . '</li>';

       }
       else {

            // Just display current page if not parents
            echo '<li class = "active">'. get_the_title() . '</li>';

        }
     }
    else {
       echo 'Home';
    }
   }
 }

CPT UI Setting

enter image description here

Custom Post Type Permalinks

enter image description here

0

The code prints in breadcrumbs - / Taxonomy / Name, how to do what would print Post type / Taxonomy / Name?

If I understood your question correctly, you want to prepend custom post type name to the existing breadcrumb... This modification to your code may help.

function the_breadcrumb() {
     global $post;
     if (!is_front_page()) {
        echo '<li><a href="';
        echo get_option('home');
        echo '">Главная';
        echo "</a></li> ";
        if (is_category() || is_single() || is_tax()) {

             $categories = wp_get_post_terms( $post->ID, "tip" );

             if (empty($categories)) {$categories = get_the_category();}



             //  Add your Post type here

            $postType = get_post_type_object(get_post_type());
            if ($postType) {
                 $post_type_title =  esc_html($postType->labels->singular_name);
                 $post_type_link = get_post_type_archive_link( get_post_type( ) );    

                 echo '<li><a href="'. $post_type_link . '">';
                 echo $post_type_title.'</a></li>';
             }




             // Rest of code ....
  • Hello, that didn't help. My link - /catalog/mouse/444-2/ . breadcrumbs - mouse-444-2 . breadcrumbs do not display the name of the catalog (type of post) – starspro Mar 18 at 18:30
  • @starspro Answer updated, plz check now! – Qaisar Feroz Mar 18 at 18:47
  • also not working. I have added the topic of the question, the screenshots of the settings CPT UI can be there something ? – starspro Mar 19 at 10:34
  • @starspro Tested on my localhost setup and updated the answer. It should work now without fail. – Qaisar Feroz Mar 19 at 11:51
  • If open site.ru/%tip% / it displays a list of materials. and if you add site.ru/catalog/%tip%/ the 404 error... – starspro Mar 19 at 12:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.