post_content; if ( ! empty( $post_obj->post_excerpt ) ) { $source_content = $post_obj->post_excerpt; } $source_content = preg_replace( '`\[[^\]]*\]`', '', $source_content ); $trimmed_content = wp_trim_words( $source_content, $length, '...' ); return $trimmed_content; } endif; if ( ! function_exists( 'classifyed_simple_breadcrumb' ) ) : /** * Simple breadcrumb. * * @since 1.0.0 * * @link: https://gist.github.com/melissacabral/4032941 * * @param array $args Arguments */ function classifyed_simple_breadcrumb( $args = array() ) { $args = wp_parse_args( (array) $args, array( 'separator' => '>', ) ); /* === OPTIONS === */ $text['home'] = get_bloginfo( 'name' ); // text for the 'Home' link $text['category'] = __( 'Archive for %s', 'classifyed' ); // text for a category page $text['tax'] = __( 'Archive for %s', 'classifyed' ); // text for a taxonomy page $text['search'] = __( 'Search results for: %s', 'classifyed' ); // text for a search results page $text['tag'] = __( 'Posts tagged %s', 'classifyed' ); // text for a tag page $text['author'] = __( 'View all posts by %s', 'classifyed' ); // text for an author page $text['404'] = __( 'Error 404', 'classifyed' ); // text for the 404 page $showCurrent = 1; // 1 - show current post/page title in breadcrumbs, 0 - don't show $showOnHome = 0; // 1 - show breadcrumbs on the homepage, 0 - don't show $delimiter = ' ' . $args['separator'] . ' '; // delimiter between crumbs $before = ''; // tag before the current crumb $after = ''; // tag after the current crumb /* === END OF OPTIONS === */ global $post; $homeLink = esc_url( home_url( '/' ) ); $linkBefore = ''; $linkAfter = ''; $linkAttr = ' rel="v:url" property="v:title"'; $link = $linkBefore . '%2$s' . $linkAfter; if ( is_home() || is_front_page() ) { if ( $showOnHome == 1 ) { echo '
' . $text['home'] . '
'; } } else { echo '
' . sprintf( $link, $homeLink, $text['home'] ) . $delimiter; if ( is_category() ) { $thisCat = get_category( get_query_var( 'cat' ), false ); if ( $thisCat->parent != 0 ) { $cats = get_category_parents( $thisCat->parent, true, $delimiter ); $cats = str_replace( '', '' . $linkAfter, $cats ); echo $cats; } echo $before . sprintf( $text['category'], single_cat_title( '', false ) ) . $after; } elseif ( is_tax() ) { $thisCat = get_category( get_query_var( 'cat' ), false ); if ( $thisCat->parent != 0 ) { $cats = get_category_parents( $thisCat->parent, true, $delimiter ); $cats = str_replace( '', '' . $linkAfter, $cats ); echo $cats; } echo $before . sprintf( $text['tax'], single_cat_title( '', false ) ) . $after; } elseif ( is_search() ) { echo $before . sprintf( $text['search'], get_search_query() ) . $after; } elseif ( is_day() ) { echo sprintf( $link, get_year_link( get_the_time( 'Y' ) ), get_the_time( 'Y' ) ) . $delimiter; echo sprintf( $link, get_month_link( get_the_time( 'Y' ),get_the_time( 'm' ) ), get_the_time( 'F' ) ) . $delimiter; echo $before . get_the_time( 'd' ) . $after; } elseif ( is_month() ) { echo sprintf( $link, get_year_link( get_the_time( 'Y' ) ), get_the_time( 'Y' ) ) . $delimiter; echo $before . get_the_time( 'F' ) . $after; } elseif ( is_year() ) { echo $before . get_the_time( 'Y' ) . $after; } elseif ( is_single() && ! is_attachment() ) { if ( get_post_type() != 'post' ) { $post_type = get_post_type_object( get_post_type() ); $slug = $post_type->rewrite; printf( $link, $homeLink . '/' . $slug['slug'] . '/', $post_type->labels->singular_name ); if ( $showCurrent == 1 ) { echo $delimiter . $before . get_the_title() . $after; } } else { $cat = get_the_category(); $cat = $cat[0]; $cats = get_category_parents( $cat, true, $delimiter ); if ( $showCurrent == 0 ) { $cats = preg_replace( "#^(.+)$delimiter$#", '$1', $cats ); } $cats = str_replace( '', '' . $linkAfter, $cats ); echo $cats; if ( $showCurrent == 1 ) { echo $before . get_the_title() . $after; } } } elseif ( ! is_single() && ! is_page() && get_post_type() != 'post' && ! is_404() ) { $post_type = get_post_type_object( get_post_type() ); echo $before . $post_type->labels->singular_name . $after; } elseif ( is_attachment() ) { $parent = get_post( $post->post_parent ); $cat = get_the_category( $parent->ID ); $cat = $cat[0]; $cats = get_category_parents( $cat, true, $delimiter ); $cats = str_replace( '', '' . $linkAfter, $cats ); echo $cats; printf( $link, get_permalink( $parent ), $parent->post_title ); if ( $showCurrent == 1 ) { echo $delimiter . $before . get_the_title() . $after; } } elseif ( is_page() && ! $post->post_parent ) { if ( $showCurrent == 1 ) { echo $before . get_the_title() . $after; } } elseif ( is_page() && $post->post_parent ) { $parent_id = $post->post_parent; $breadcrumbs = array(); while ( $parent_id ) { $page = get_page( $parent_id ); $breadcrumbs[] = sprintf( $link, get_permalink( $page->ID ), 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 $delimiter; } } if ( $showCurrent == 1 ) { echo $delimiter . $before . get_the_title() . $after; } } elseif ( is_tag() ) { echo $before . sprintf( $text['tag'], single_tag_title( '', false ) ) . $after; } elseif ( is_author() ) { global $author; $userdata = get_userdata( $author ); echo $before . sprintf( $text['author'], $userdata->display_name ) . $after; } elseif ( is_404() ) { echo $before . $text['404'] . $after; } if ( get_query_var( 'paged' ) ) { if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) { echo ' ('; } echo __( 'Page', 'classifyed' ) . ' ' . get_query_var( 'paged' ); if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) { echo ')'; } } echo '
'; } } endif;