function sn_breadcrumbs() { $enable_breadcrumb = of_get_option('sn_breadcrumb_enable'); if ($enable_breadcrumb == 1) { /* === OPTIONS === */ $text['home'] = __('Home', 'sn'); // text for the 'Home' link $text['category'] = __('Archive by Category "%s"', 'sn'); // text for a category page $text['search'] = __('Search Results for "%s" Query', 'sn'); // text for a search results page $text['tag'] = __('Posts Tagged "%s"', 'sn'); // text for a tag page $text['author'] = __('Articles Posted by %s', 'sn'); // text for an author page $text['404'] = __('Error 404', 'sn'); // text for the 404 page $show_current = 1; // 1 - show current post/page/category title in breadcrumbs, 0 - don't show $show_on_home = 0; // 1 - show breadcrumbs on the homepage, 0 - don't show $show_home_link = 1; // 1 - show the 'Home' link, 0 - don't show $show_title = 1; // 1 - show the title for the links, 0 - don't show $delimiter = '<span class="arr">></span>'; // delimiter between crumbs $before = '<span class="current">'; // tag before the current crumb $after = '</span>'; // tag after the current crumb /* === END OF OPTIONS === */ wp_reset_query(); global $post; $home_link = home_url('/'); $link_before = '<span typeof="v:Breadcrumb">'; $link_after = '</span>'; $link_attr = ' rel="v:url" property="v:title"'; $link = $link_before . '<a' . $link_attr . ' href="%1$s">%2$s</a>' . $link_after; $parent_id = $parent_id_2 = $post->post_parent; $frontpage_id = get_option('page_on_front'); $blogpage_id = get_option('page_for_posts'); $blog_title = get_the_title($blogpage_id); $blog_link = '<a href="' . get_permalink($blogpage_id) . '">' . $blog_title . '</a>' . $delimiter; if (sn_is_blog_page()) { echo '<p id="menu-breadcrumb" class="small" xmlns:v="http://rdf.data-vocabulary.org/#"><strong class="vhide">' . __('You are here', 'sn') . '</strong><a href="' . $home_link . '">' . $text['home'] . '</a><span class="arr">></span><span class="current">' . $blog_title . '</span></p>'; } elseif (!is_home() && !is_front_page()) { echo '<p id="menu-breadcrumb" class="small" xmlns:v="http://rdf.data-vocabulary.org/#"><strong class="vhide">' . __('You are here', 'sn') . '</strong>'; if ($show_home_link == 1) { echo '<a href="' . $home_link . '" rel="v:url" property="v:title">' . $text['home'] . '</a>'; if ($frontpage_id == 0 || $parent_id != $frontpage_id) { echo $delimiter; } } if (is_category()) { echo $blog_link; $this_cat = get_category(get_query_var('cat'), false); if ($this_cat->parent != 0) { $cats = get_category_parents($this_cat->parent, TRUE, $delimiter); if ($show_current == 0) { $cats = preg_replace("#^(.+){$delimiter}\$#", "\$1", $cats); } $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats); $cats = str_replace('</a>', '</a>' . $link_after, $cats); if ($show_title == 0) { $cats = preg_replace('/ title="(.*?)"/', '', $cats); } echo $cats; } if ($show_current == 1) { echo $before . sprintf($text['category'], 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, $home_link . '/' . $slug['slug'] . '/', $post_type->labels->singular_name); if ($show_current == 1) { echo $delimiter . $before . get_the_title() . $after; } } else { echo $blog_link; $cat = get_the_category(); $cat = $cat[0]; $cats = get_category_parents($cat, TRUE, $delimiter); if ($show_current == 0) { $cats = preg_replace("#^(.+){$delimiter}\$#", "\$1", $cats); } $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats); $cats = str_replace('</a>', '</a>' . $link_after, $cats); if ($show_title == 0) { $cats = preg_replace('/ title="(.*?)"/', '', $cats); } echo $cats; if ($show_current == 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($parent_id); $cat = get_the_category($parent->ID); $cat = $cat[0]; $cats = get_category_parents($cat, TRUE, $delimiter); $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats); $cats = str_replace('</a>', '</a>' . $link_after, $cats); if ($show_title == 0) { $cats = preg_replace('/ title="(.*?)"/', '', $cats); } echo $cats; printf($link, get_permalink($parent), $parent->post_title); if ($show_current == 1) { echo $delimiter . $before . get_the_title() . $after; } } elseif (is_page() && !$parent_id) { if ($show_current == 1) { echo $before . get_the_title() . $after; } } elseif (is_page() && $parent_id) { if ($parent_id != $frontpage_id) { $breadcrumbs = array(); while ($parent_id) { $page = get_page($parent_id); if ($parent_id != $frontpage_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 ($show_current == 1) { if ($show_home_link == 1 || $parent_id_2 != 0 && $parent_id_2 != $frontpage_id) { echo $delimiter; } echo $before . get_the_title() . $after; } } elseif (is_tag()) { echo $blog_link; echo $before . sprintf($text['tag'], single_tag_title('', false)) . $after; } elseif (is_author()) { global $author; $userdata = get_userdata($author); echo '<a href="' . get_permalink($blogpage_id) . '">' . $blog_title . '</a>' . $delimiter; 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', 'sn') . ' ' . get_query_var('paged'); if (is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author()) { echo ')'; } } echo '</p><!-- .breadcrumbs -->'; } } }
function sn_body_classes($classes) { $fixed_header = of_get_option('sn_header_fixed'); if (!is_404()) { $id = get_the_ID(); $post_type = get_post_type($id); $blogpage_id = get_option('page_for_posts'); if (sn_is_blog_page() && $blogpage_id != 0) { $classes[] = 'page-id-' . $blogpage_id; } elseif ($post_type == 'sn_portfolio') { $classes[] = 'page-id-' . $id; } elseif ($post_type == 'post') { if ($blogpage_id != 0) { $classes[] = 'page-id-' . $blogpage_id; } else { $classes[] = 'page-id-blog'; } } } if ($fixed_header == 0) { $classes[] = 'no-fixed-header'; } return $classes; }
$col2_3_class = $sidebar_settings == 'left' ? 'col col-content col-2-3 push-1-3' : 'col col-content col-2-3'; $col1_3_class = $sidebar_settings == 'left' ? 'col col-side col-1-3 pull-2-3' : 'col col-side col-1-3'; ?> <div class="<?php echo $grid_class; ?> "> <div class="<?php echo $col2_3_class; ?> "> <?php if (sn_is_blog_page()) { ?> <?php sn_breadcrumbs(); $hide_title = rwmb_meta('sn_hide_title', array(), $blogpage_id); if (!$hide_title) { $blog_title = get_the_title($blogpage_id); ?> <h1 class="entry-title"><?php echo $blog_title; ?> </h1> <?php } ?>