', 'rara-academic' ) ) ); // delimiter between crumbs
$home = esc_html( get_theme_mod( 'rara_academic_breadcrumb_home_text', __( 'Home', 'rara-academic' ) ) ); // text for the 'Home' link
$showCurrent = get_theme_mod( 'rara_academic_ed_current', '1' ); // 1 - show current post/page title in breadcrumbs, 0 - don't show
$before = ''; // tag before the current crumb
$after = ''; // tag after the current crumb
$ed_breadcrumb = get_theme_mod( 'rara_academic_ed_breadcrumb' );
global $post;
$homeLink = esc_url( home_url( ) );
if( $ed_breadcrumb ){
if ( is_front_page() ) {
if ( $showOnHome == 1 ) echo '';
} else {
echo '
' . esc_html( $home ) . ' ' . esc_html( $delimiter ) . ' ';
if ( is_category() ) {
$thisCat = get_category( get_query_var( 'cat' ), false );
if ( $thisCat->parent != 0 ) echo get_category_parents( $thisCat->parent, TRUE, ' ' . $delimiter . ' ' );
echo $before . esc_html( single_cat_title( '', false ) ) . $after;
} elseif( rara_academic_is_woocommerce_activated() && ( is_product_category() || is_product_tag() ) ){ //For Woocommerce archive page
$current_term = $GLOBALS['wp_query']->get_queried_object();
if( is_product_category() ){
$ancestors = get_ancestors( $current_term->term_id, 'product_cat' );
$ancestors = array_reverse( $ancestors );
foreach ( $ancestors as $ancestor ) {
$ancestor = get_term( $ancestor, 'product_cat' );
if ( ! is_wp_error( $ancestor ) && $ancestor ) {
echo ' ' . esc_html( $ancestor->name ) . ' ' . esc_html( $delimiter ) . ' ';
}
}
}
echo $before . esc_html( $current_term->name ) . $after;
} elseif( rara_academic_is_woocommerce_activated() && is_shop() ){ //Shop Archive page
if ( get_option( 'page_on_front' ) == wc_get_page_id( 'shop' ) ) {
return;
}
$_name = wc_get_page_id( 'shop' ) ? get_the_title( wc_get_page_id( 'shop' ) ) : '';
if ( ! $_name ) {
$product_post_type = get_post_type_object( 'product' );
$_name = $product_post_type->labels->singular_name;
}
echo $before . esc_html( $_name ) . $after;
} elseif ( is_search() ) {
echo $before . esc_html__( 'Search Results for "', 'rara-academic' ) . esc_html( get_search_query() ) . esc_html__( '"', 'rara-academic' ) . $after;
} elseif ( is_day() ) {
echo '' . esc_html( get_the_time( __( 'Y', 'rara-academic' ) ) ) . ' ' . esc_html( $delimiter ) . ' ';
echo '' . esc_html( get_the_time( __( 'F', 'rara-academic' ) ) ) . ' ' . esc_html( $delimiter ) . ' ';
echo $before . esc_html( get_the_time( __( 'd', 'rara-academic' ) ) ) . $after;
} elseif ( is_month() ) {
echo '' . esc_html( get_the_time( __( 'Y', 'rara-academic' ) ) ) . ' ' . esc_html( $delimiter ) . ' ';
echo $before . esc_html( get_the_time( __( 'F', 'rara-academic' ) ) ) . $after;
} elseif ( is_year() ) {
echo $before . esc_html( get_the_time( __( 'Y', 'rara-academic' ) ) ) . $after;
} elseif ( is_single() && !is_attachment() ) {
if( rara_academic_is_woocommerce_activated() && 'product' === get_post_type() ){ //For Woocommerce single product
if ( $terms = wc_get_product_terms( $post->ID, 'product_cat', array( 'orderby' => 'parent', 'order' => 'DESC' ) ) ) {
$main_term = apply_filters( 'woocommerce_breadcrumb_main_term', $terms[0], $terms );
$ancestors = get_ancestors( $main_term->term_id, 'product_cat' );
$ancestors = array_reverse( $ancestors );
foreach ( $ancestors as $ancestor ) {
$ancestor = get_term( $ancestor, 'product_cat' );
if ( ! is_wp_error( $ancestor ) && $ancestor ) {
echo ' ' . esc_html( $ancestor->name ) . ' ' . esc_html( $delimiter ) . ' ';
}
}
echo ' ' . esc_html( $main_term->name ) . ' ' . esc_html( $delimiter ) . ' ';
}
echo $before . esc_html( get_the_title() ) . $after;
} elseif ( get_post_type() != 'post' ) {
$post_type = get_post_type_object( get_post_type() );
if( $post_type->has_archive == true ){
// Add support for a non-standard label of 'archive_title' (special use case).
$label = !empty( $post_type->labels->archive_title ) ? $post_type->labels->archive_title : $post_type->labels->name;
// Core filter hook.
$label = apply_filters( 'post_type_archive_title', $label, $post_type->name );
printf( '%s', esc_url( get_post_type_archive_link( $post_type ) ), $label );
echo '' . esc_html( $delimiter ) . ' ';
}
if ( $showCurrent == 1 ){
echo $before . esc_html( get_the_title() ) . $after;
}
} else {
$cat = get_the_category();
if( $cat ){
$cat = $cat[0];
$cats = get_category_parents( $cat, TRUE, ' ' . esc_html( $delimiter ) . ' ' );
if ( $showCurrent == 0 ) $cats = preg_replace( "#^(.+)\s$delimiter\s$#", "$1", $cats );
echo $cats;
}
if ( $showCurrent == 1 ) echo $before . esc_html( get_the_title() ) . $after;
}
} elseif ( !is_single() && !is_page() && get_post_type() != 'post' && !is_404() ) {
$post_type = get_post_type_object(get_post_type());
if ( get_query_var('paged') ) {
echo '' . esc_html( $post_type->label ) . '';
if( $showCurrent == 1 ) echo ' ' . esc_html( $delimiter ) . ' ' . $before . sprintf( __('Page %s','rara-academic'), get_query_var('paged') ) . $after;
} else {
if ( $showCurrent == 1 ) echo $before . esc_html( $post_type->label ) . $after;
}
} elseif ( is_attachment() ) {
$parent = get_post( $post->post_parent );
$cat = get_the_category( $parent->ID );
if( $cat ){
$cat = $cat[0];
echo get_category_parents( $cat, TRUE, ' ' . esc_html( $delimiter ) . ' ');
echo '' . esc_html( $parent->post_title ) . '' . ' ' . esc_html( $delimiter ) . ' ';
}
if ( $showCurrent == 1 ) echo $before . esc_html( get_the_title() ) . $after;
} elseif ( is_page() && !$post->post_parent ) {
if ( $showCurrent == 1 ) echo $before . esc_html( get_the_title() ) . $after;
} elseif ( is_page() && $post->post_parent ) {
$parent_id = $post->post_parent;
$breadcrumbs = array();
while( $parent_id ){
$page = get_post( $parent_id );
$breadcrumbs[] = '' . esc_html( get_the_title( $page->ID ) ) . '';
$parent_id = $page->post_parent;
}
$breadcrumbs = array_reverse( $breadcrumbs );
for ( $i = 0; $i < count( $breadcrumbs) ; $i++ ){
echo $breadcrumbs[$i];
if ( $i != count( $breadcrumbs ) - 1 ) echo ' ' . esc_html( $delimiter ) . ' ';
}
if ( $showCurrent == 1 ) echo ' ' . esc_html( $delimiter ) . ' ' . $before . esc_html( get_the_title() ) . $after;
} elseif ( is_tag() ) {
echo $before . esc_html( single_tag_title( '', false ) ) . $after;
} elseif ( is_author() ) {
global $author;
$userdata = get_userdata( $author );
echo $before . esc_html( $userdata->display_name ) . $after;
} elseif ( is_404() ) {
echo $before . esc_html__( '404 Error - Page not Found', 'rara-academic' ) . $after;
} elseif( is_home() ){
echo $before;
single_post_title();
echo $after;
}
echo '
';
}
}
} // end rara_academic_breadcrumbs()
endif;
if( ! function_exists( 'rara_academic_post_author' ) ) :
/**
* Author Bio
*
*/
function rara_academic_post_author(){
if( get_the_author_meta( 'description' ) ){
?>