Navigation
This is archived content. Visit our new forum.

Tagged: 

  • Author
    Posts
  • #1101033
    ofmedia
    Participant

    Hello, I am trying to get post to show breadcrumbs like Home > Breadcrumb Category > Post Name Issue. Right now it is just showing Home > Post Name. I searched the forum and tried what I could find and nothing has worked.

    #1101072
    John Ezra
    Member

    Hi there,

    Thanks for writing in! Are you able to see the category in the URL or is it missing there as well? Have you configured your permalinks to show categories?

    Please also provide your URL so we can check. Thanks!

    #1101077
    ofmedia
    Participant
    This reply has been marked as private.
    #1101083
    John Ezra
    Member

    Hi there,

    Thanks for updating the thread! You did not provide any answers to the questions we asked. We need a little bit more info to check this out for you. Would you mind providing us with login credentials so we can take a closer look? To do this, you can make a post with the following info:

    – Link to your site
    – WordPress Admin username / password
    – FTP credentials

    Don’t forget to select Set as private reply. This ensures your information is only visible to our staff.

    #1101086
    ofmedia
    Participant
    This reply has been marked as private.
    #1101252
    Rad
    Moderator

    Hi there,

    Have you tried this thread https://community.theme.co/forums/topic/how-to-feature-product-category-in-breadcrumbs/ ?

    I don’t see any customization added to your site. Would you mind trying the suggested code to your child theme’s functions.php

    Thanks!

    #1101257
    ofmedia
    Participant

    Thank you for the reply. Just tried and it doesn’t work. I went through the forums and tried everything I could find. It’s weird.

    #1101315
    Rue Nel
    Moderator

    Hello There,

    Thanks for the updates! Since you have given the ftp login details, I went ahead and modified the code. I ended having this code in your child theme’s functions.php file:

    // Breadcrumbs Display Category Name
    // =============================================================================
    function get_breadcrumb_category( $cat ) {
    $post = get_post( $post->ID );
    $post_type = $post->post_type;
    $taxonomy = $cat;
    $f_categories = wp_get_post_terms( $post->ID, $taxonomy );
    $f_category = $f_categories[0];
    if ( $f_category->parent != 0 ) {
    $f_category_id    = $f_category->parent;
    $parent_array     = get_term_by('id', $f_category_id, $taxonomy, 'ARRAY_A');
    $f_category_name  = $parent_array["name"];
    $term_link        = get_term_link( $f_category_id, $taxonomy );
    } else {
    $f_category_id    = $f_category->term_id;
    $f_category_name  = $f_category->name;
    $term_link        = get_term_link( $f_category_id, $taxonomy );
    }
    if ( $f_categories && ! is_wp_error($f_categories) ) {
    return '<a href="' . $term_link . '">' . $f_category_name . '</a>';
    } else {
    return '';
    }
    }
    function x_breadcrumbs() {
    if ( x_get_option( 'x_breadcrumb_display', '1' ) ) {
    GLOBAL $post;
    $is_ltr         = ! is_rtl();
    $stack          = x_get_stack();
    $delimiter      = x_get_breadcrumb_delimiter();
    $home_text      = x_get_breadcrumb_home_text();
    $home_link      = home_url();
    $current_before = x_get_breadcrumb_current_before();
    $current_after  = x_get_breadcrumb_current_after();
    $page_title     = get_the_title();
    $blog_title     = get_the_title( get_option( 'page_for_posts', true ) );
    $post_parent    = $post->post_parent;
    if ( X_WOOCOMMERCE_IS_ACTIVE ) {
    $shop_url   = x_get_shop_link();
    $shop_title = x_get_option( 'x_' . $stack . '_shop_title', __( 'The Shop', '__x__' ) );
    $shop_link  = '<a href="'. $shop_url .'">' . $shop_title . '</a>';
    }
    echo '<div class="x-breadcrumbs"><a href="' . $home_link . '">' . $home_text . '</a>' . $delimiter;
    if ( is_home() ) {
    echo $current_before . $blog_title . $current_after;
    } elseif ( is_category() ) {
    $the_cat = get_category( get_query_var( 'cat' ), false );
    if ( $the_cat->parent != 0 ) echo '<a href="'.get_permalink(102).'">'.get_the_title(102) .'</a>';
    echo $current_before . single_cat_title( '', false ) . $current_after;
    } elseif ( x_is_product_category() ) {
    if ( $is_ltr ) {
    echo $shop_link . $delimiter . $current_before . single_cat_title( '', false ) . $current_after;
    } else {
    echo $current_before . single_cat_title( '', false ) . $current_after . $delimiter . $shop_link;
    }
    } elseif ( x_is_product_tag() ) {
    if ( $is_ltr ) {
    echo $shop_link . $delimiter . $current_before . single_tag_title( '', false ) . $current_after;
    } else {
    echo $current_before . single_tag_title( '', false ) . $current_after . $delimiter . $shop_link;
    }
    } elseif ( is_search() ) {
    echo $current_before . __( 'Search Results for ', '__x__' ) . '"' . get_search_query() . '"' . $current_after;
    } elseif ( is_singular( 'post' ) ) {
    //if ( get_option( 'page_for_posts' ) == is_front_page() ) {
    //  echo $current_before . $page_title . $current_after;
    //  echo '<span>;)</span>';
    //} else {
    //echo '<span>;)</span>';
    if ( $is_ltr ) {
    $f_category = get_the_category();
    if ( $f_category[0]->category_parent != 0 ) {
    $f_category_id = $f_category[0]->parent;
    $f_category_name = get_cat_name( $f_category_id );
    $f_subcategory_id = $f_category[0]->cat_ID;
    $f_subcategory_name  = get_cat_name( $f_subcategory_id );
    echo '<a href="' . get_category_link( $f_category_id ) . '">' . $f_category_name . '</a>' . $delimiter 
    .'<a href="' . get_category_link( $f_subcategory_id ) . '">' . $f_subcategory_name . '</a>' . $delimiter . $current_before . $page_title . $current_after;
    } else {
    $f_category_id = $f_category[0]->term_id;
    $f_category_name = $f_category[0]->name;
    echo '<a href="' . get_category_link( $f_category_id ) . '">' . $f_category_name . '</a>' . $delimiter . $current_before . $page_title . $current_after;
    }
    } else {
    echo $current_before . $page_title . $current_after . $delimiter . '<a href="' . get_permalink( get_option( 'page_for_posts' ) ) . '">' . $blog_title . '</a>';
    }
    //}
    } elseif ( x_is_portfolio() ) {
    echo $current_before . get_the_title() . $current_after;
    } elseif ( x_is_portfolio_item() ) {
    $link  = x_get_parent_portfolio_link();
    $title = x_get_parent_portfolio_title();
    if ( $v = get_breadcrumb_category('portfolio-category') ) {
    $portfolio_category = $delimiter . $v;
    } else {
    $portfolio_category = '';
    }
    if ( $is_ltr ) {
    echo '<a href="' . $link . '">' . $title . '</a>' . $portfolio_category . $delimiter . $current_before . $page_title . $current_after;
    } else {
    echo $current_before . $page_title . $current_after . $portfolio_category . $delimiter . '<a href="' . $link . '">' . $title . '</a>';
    }
    } elseif ( x_is_product() ) {
    if ( $v = get_breadcrumb_category('product_cat') ) {
    $product_category = $delimiter . $v;
    } else {
    $product_category = '';
    }
    if ( $is_ltr ) {
    echo $shop_link . $product_category . $delimiter . $current_before . $page_title . $current_after;
    } else {
    echo $current_before . $page_title . $current_after . $product_category . $delimiter . $shop_link;
    }
    } elseif ( x_is_buddypress() ) {
    if ( bp_is_group() ) {
    echo '<a href="' . bp_get_groups_directory_permalink() . '">' . x_get_option( 'x_buddypress_groups_title', __( 'Groups', '__x__' ) ) . '</a>' . $delimiter . $current_before . x_buddypress_get_the_title() . $current_after;
    } elseif ( bp_is_user() ) {
    echo '<a href="' . bp_get_members_directory_permalink() . '">' . x_get_option( 'x_buddypress_members_title', __( 'Members', '__x__' ) ) . '</a>' . $delimiter . $current_before . x_buddypress_get_the_title() . $current_after;
    } else {
    echo $current_before . x_buddypress_get_the_title() . $current_after;
    }
    } elseif ( x_is_bbpress() ) {
    //remove_filter( 'bbp_no_breadcrumb', '__return_true' );
    if ( bbp_is_forum_archive() ) {
    echo $current_before . bbp_get_forum_archive_title() . $current_after;
    } else {
    echo bbp_get_breadcrumb();
    }
    //add_filter( 'bbp_no_breadcrumb', '__return_true' );
    } elseif ( is_page() && ! $post_parent ) {
    echo $current_before . $page_title . $current_after;
    } elseif ( is_page() && $post_parent ) {
    $parent_id   = $post_parent;
    $breadcrumbs = array();
    if ( is_rtl() ) {
    echo $current_before . $page_title . $current_after . $delimiter;
    }
    while ( $parent_id ) {
    $page          = get_page( $parent_id );
    $breadcrumbs[] = '<a href="' . get_permalink( $page->ID ) . '">' . get_the_title( $page->ID ) . '</a>';
    $parent_id     = $page->post_parent;
    }
    if ( $is_ltr ) {
    $breadcrumbs = array_reverse( $breadcrumbs );
    }
    for ( $i = 0; $i < count( $breadcrumbs ); $i++ ) {
    echo $breadcrumbs[$i];
    if ( $i != count( $breadcrumbs ) -1 ) echo $delimiter;
    }
    if ( $is_ltr ) {
    echo $delimiter . $current_before . $page_title . $current_after;
    }
    } elseif ( is_tag() ) {
    echo $current_before . single_tag_title( '', false ) . $current_after;
    } elseif ( is_author() ) {
    GLOBAL $author;
    $userdata = get_userdata( $author );
    echo $current_before . __( 'Posts by ', '__x__' ) . '"' . $userdata->display_name . $current_after . '"';
    } elseif ( is_404() ) {
    echo $current_before . __( '404 (Page Not Found)', '__x__' ) . $current_after;
    } elseif ( is_archive() ) {
    if ( x_is_shop() ) {
    echo $current_before . $shop_title . $current_after;
    } else {
    echo $current_before . __( 'Archives ', '__x__' ) . $current_after;
    }
    }
    echo '</div>';
    }
    }
    // =============================================================================

    If you need anything else we can help you with, don’t hesitate to open another thread.

    #1194568
    bradpwalker
    Participant

    Hello, I’ve had this same issue, and the above code worked except that it doesn’t show subcategories. I want it to show:

    Home > Category > Subcategory > Post

    But Subcategories are left out on post pages:

    Home > Category > Post

    And parent categories are missing on subcategory pages:

    Home > Subcategory

    Any way to adjust this code to list the full breadcrumb?

    Thank you!

    #1194840
    Rad
    Moderator

    Hi there,

    I just created a sample post here and breadcrumbs is working as expected

    http://webhostingadvice.org/hosting-review/sample-category/test-post/

    HOSTING REVIEW > SAMPLE CATEGORY > TEST POST

    Thanks!

  • <script> jQuery(function($){ $("#no-reply-1101033 .bbp-template-notice, .bbp-no-topic .bbp-template-notice").removeClass('bbp-template-notice'); }); </script>