ID ) ) { $current_id = $post->ID; } else { $current_id = false; } $title_tag = function_exists( 'is_woocommerce' ) && is_woocommerce() && is_singular( 'product' ) ? 'span' : 'h1'; echo '<' . $title_tag . ' class="pagetitle-title heading">'; if ( function_exists( 'is_woocommerce' ) && is_woocommerce() ) { woocommerce_page_title(); } elseif ( is_category() || is_tag() || is_tax() ) { echo single_tag_title( '', true ); } elseif ( is_author() ) { the_author(); } elseif ( is_date() ) { _e( 'Archive', 'allegiant' ); } elseif ( is_404() ) { echo __( 'Page Not Found', 'allegiant' ); } elseif ( is_search() ) { echo __( 'Search Results for', 'allegiant' ) . ' "' . get_search_query() . '"'; } else { echo get_the_title( $current_id ); } echo ''; } } //Displays the current page's title. Used in the main banner area. if ( ! function_exists( 'cpotheme_header_image' ) ) { function cpotheme_header_image() { $url = apply_filters( 'cpotheme_header_image', get_header_image() ); if ( '' != $url ) { return $url; } else { return false; } } } //Add theme-specific body classes add_filter( 'body_class', 'cpotheme_body_class' ); function cpotheme_body_class( $body_classes = '' ) { $current_id = cpotheme_current_id(); $classes = ''; //Sidebar Layout $classes .= ' sidebar-' . cpotheme_get_sidebar_position(); $body_classes[] = esc_attr( $classes ); return $body_classes; } //Display viewport tag if ( ! function_exists( 'cpotheme_viewport' ) ) { add_action( 'wp_head', 'cpotheme_viewport' ); function cpotheme_viewport() { echo '' . "\n"; } } //Print pingback metatag if ( ! function_exists( 'cpotheme_pingback' ) ) { add_action( 'wp_head', 'cpotheme_pingback' ); function cpotheme_pingback() { if ( get_option( 'default_ping_status' ) == 'open' ) { echo '' . "\n"; } } } //Print charset metatag if ( ! function_exists( 'cpotheme_charset' ) ) { add_action( 'wp_head', 'cpotheme_charset' ); function cpotheme_charset() { echo '' . "\n"; } } //Display shortcut edit links for logged in users if ( ! function_exists( 'cpotheme_edit' ) ) { function cpotheme_edit() { edit_post_link( __( 'Edit', 'allegiant' ) ); } } //Display the site's logo if ( ! function_exists( 'cpotheme_logo' ) ) { function cpotheme_logo( $width = 0, $height = 0 ) { $output = ''; echo $output; } } //Print an option content if ( ! function_exists( 'cpotheme_block' ) ) { function cpotheme_block( $option, $wrapper = '', $subwrapper = '' ) { $content = cpotheme_get_option( $option ); if ( '' != trim( $content ) ) { if ( '' != $wrapper ) { $ids = explode( ' ', $wrapper ); if ( is_array( $ids ) ) { $ids = $ids[0]; } echo '
'; } if ( '' != $subwrapper ) { echo '
'; } echo do_shortcode( cpotheme_get_option( wp_kses_post( $option ) ) ); if ( '' != $subwrapper ) { echo '
'; } if ( '' != $wrapper ) { echo '
'; } } } } //Print 404 message if ( ! function_exists( 'cpotheme_404' ) ) { function cpotheme_404() { echo apply_filters( 'cpotheme_404', __( 'The requested page could not be found. It could have been deleted or changed location. Try searching for it using the search function.', 'allegiant' ) ); } } //Print subfooter sidebars if ( ! function_exists( 'cpotheme_subfooter' ) ) { function cpotheme_subfooter() { $footer_columns = 3; for ( $count = 1; $count <= $footer_columns; $count ++ ) { if ( is_active_sidebar( 'footer-widgets-' . $count ) ) { $footer_last = $count == $footer_columns ? ' col-last' : ''; echo '
'; dynamic_sidebar( 'footer-widgets-' . $count ); echo '
'; } } echo '
'; } } //Print footer copyright line if ( ! function_exists( 'cpotheme_footer' ) ) { function cpotheme_footer() { echo ''; } } //Print submenu navigation if ( ! function_exists( 'cpotheme_submenu' ) ) { function cpotheme_submenu() { $ancestors = array_reverse( get_post_ancestors( get_the_ID() ) ); if ( empty( $ancestors[0] ) || 0 == $ancestors[0] ) { $ancestors[0] = get_the_ID(); } echo ''; } } //Print submenu navigation if ( ! function_exists( 'cpotheme_sitemap' ) ) { function cpotheme_sitemap() { //Print page list echo '
'; echo '

' . __( 'Pages', 'allegiant' ) . '

'; echo ''; echo '
'; //Print post categories and tag cloud echo '
'; echo '

' . __( 'Post Categories', 'allegiant' ) . '

'; echo ''; echo '

' . __( 'Post Tags', 'allegiant' ) . '

'; echo ''; echo '
'; echo '
'; } } //Enqueue custom font stylesheets from Google Fonts if ( ! function_exists( 'cpotheme_fonts' ) ) { function cpotheme_fonts( $font_name, $load_variants = false ) { $font_variants = false != $load_variants ? ':100,300,400,700' : ''; if ( is_array( $font_name ) ) { foreach ( $font_name as $current_font ) { if ( ! in_array( $current_font, array( 'Arial', 'Georgia', 'Times+New+Roman', 'Verdana' ) ) ) { $font_id = 'cpotheme-font-' . strtolower( str_replace( '+', '-', $current_font ) ); wp_enqueue_style( $font_id, '//fonts.googleapis.com/css?family=' . str_replace( '%2B', '+', rawurlencode( $current_font . $font_variants ) ) ); } } } else { if ( ! in_array( $font_name, array( 'Arial', 'Georgia', 'Times+New+Roman', 'Verdana' ) ) ) { $font_id = 'cpotheme-font-' . strtolower( str_replace( '+', '-', $font_name ) ); wp_enqueue_style( $font_id, '//fonts.googleapis.com/css?family=' . str_replace( '%2B', '+', rawurlencode( $font_name . $font_variants ) ) ); } } } } //Creates a grid of columns for display templated content, running the WordPress loop if ( ! function_exists( 'cpotheme_grid' ) ) { function cpotheme_grid( $posts, $element, $template, $columns = 3, $args = null ) { if ( null == $posts ) { cpotheme_grid_default( $element, $template, $columns, $args ); } else { global $post; cpotheme_grid_custom( $posts, $element, $template, $columns, $args ); } } } //Runs the grid using the default loop if ( ! function_exists( 'cpotheme_grid_default' ) ) { function cpotheme_grid_default( $element, $template, $columns = 3, $args = null ) { $class = isset( $args['class'] ) ? $args['class'] : ''; if ( '' == $columns ) { $columns = 3; } echo '
'; $count = 0; while ( have_posts() ) { the_post(); if ( 0 == $count % $columns && $count > 0 ) { echo '
'; do_action( 'cpotheme_grid_' . esc_attr( $template ) ); echo '
'; } $count ++; echo '
'; get_template_part( 'template-parts/' . esc_attr( $element ), esc_attr( $template ) ); echo '
'; } echo '
'; } } //Runs the grid using a custom loop if ( ! function_exists( 'cpotheme_grid_custom' ) ) { function cpotheme_grid_custom( $posts, $element, $template, $columns = 3, $args = null ) { global $post; $class = isset( $args['class'] ) ? $args['class'] : ''; if ( '' == $columns ) { $columns = 3; } echo '
'; $count = 0; foreach ( $posts as $post ) { setup_postdata( $post ); if ( 0 == $count % $columns && $count > 0 ) { echo '
'; do_action( 'cpotheme_grid_' . esc_attr( $template ) ); echo '
'; } $count ++; echo '
'; get_template_part( 'template-parts/' . esc_attr( $element ), esc_attr( $template ) ); echo '
'; } echo '
'; } } // Generates breadcrumb navigation if ( ! function_exists( 'cpotheme_breadcrumb' ) ) { function cpotheme_breadcrumb( $display = false ) { if ( ! is_home() && ! is_front_page() ) { //Use WooCommerce navigation if it's a shop page if ( function_exists( 'is_woocommerce' ) && function_exists( 'woocommerce_breadcrumb' ) && is_woocommerce() ) { woocommerce_breadcrumb(); return; } $result = ''; if ( function_exists( 'yoast_breadcrumb' ) ) { $result = yoast_breadcrumb( '', '', false ); } if ( '' == $result ) { global $post; if ( is_object( $post ) ) { $pid = $post->ID; } else { $pid = ''; } $result = ''; if ( '' != $pid ) { $result = ""; //Add post hierarchy if ( is_singular() ) : $post_data = get_post( $pid ); $result .= "" . apply_filters( 'the_title', $post_data->post_title ) . "\n"; //Add post hierarchy while ( $post_data->post_parent ) : $post_data = get_post( $post_data->post_parent ); $result = "" . apply_filters( 'the_title', $post_data->post_title ) . "\n" . $result; endwhile; elseif ( is_tax() ) : $result .= single_tag_title( '', false ); elseif ( is_author() ) : $author = get_userdata( get_query_var( 'author' ) ); $result .= $author->display_name; //Prefix with a taxonomy if possible elseif ( is_category() ) : $post_data = get_the_category( $pid ); if ( isset( $post_data[0] ) ) : $data = get_category_parents( $post_data[0]->cat_ID, true, ' » ' ); if ( ! is_object( $data ) ) : $result .= substr( $data, 0, - 8 ); endif; endif; elseif ( is_search() ) : $result .= __( 'Search Results', 'allegiant' ); else : if ( isset( $post->ID ) ) { $current_id = $post->ID; } else { $current_id = false; } if ( $current_id ) { $result .= get_the_title( $current_id ); } endif; } elseif ( is_404() ) { $result = ""; $result .= __( 'Page Not Found', 'allegiant' ); } $result = '' . __( 'Home', 'allegiant' ) . '' . $result; } $output = ''; echo $output; } } } //Displays the search form on search pages add_action( 'cpotheme_before_content', 'cpotheme_search_form' ); if ( ! function_exists( 'cpotheme_search_form' ) ) { function cpotheme_search_form() { if ( is_search() ) { $search_query = ''; if ( isset( $_GET['s'] ) ) { $search_query = esc_attr( $_GET['s'] ); } echo '
'; echo ''; echo '
'; if ( ! have_posts() ) { echo '

' . __( 'No results were found. Please try searching with different terms.', 'allegiant' ) . '

'; } } } } //Displays the post image on listings and blog posts if ( ! function_exists( 'cpotheme_postpage_image' ) ) { function cpotheme_postpage_image() { if ( has_post_thumbnail() ) { if ( ! is_singular( 'post' ) ) { echo ''; the_post_thumbnail( 'portfolio' ); echo ''; } else { the_post_thumbnail(); } } } } //Displays the post title on listings if ( ! function_exists( 'cpotheme_postpage_title' ) ) { function cpotheme_postpage_title() { if ( ! is_singular( 'post' ) ) { echo '

'; echo ''; the_title(); echo ''; echo '

'; } } } //Displays the post content if ( ! function_exists( 'cpotheme_postpage_content' ) ) { function cpotheme_postpage_content() { if ( true === cpotheme_get_option( 'postpage_preview' ) || is_singular( 'post' ) ) { the_content(); cpotheme_post_pagination(); } else { the_excerpt(); } } } //Displays the post date if ( ! function_exists( 'cpotheme_postpage_date' ) ) { function cpotheme_postpage_date( $display = false, $date_format = '', $format_text = '' ) { if ( '' != $date_format ) { $date_string = get_the_date( $date_format ); } else { $date_format = get_option( 'date_format' ); $date_string = get_the_date( $date_format ); } if ( '' != $format_text ) { $date_string = sprintf( $format_text, $date_string ); } echo '
' . $date_string . '
'; } } //Displays the author link if ( ! function_exists( 'cpotheme_postpage_author' ) ) { function cpotheme_postpage_author( $display = false, $format_text = '' ) { $author_alt = sprintf( esc_attr__( 'View all posts by %s', 'allegiant' ), get_the_author() ); $author = sprintf( '%3$s', get_author_posts_url( get_the_author_meta( 'ID' ) ), $author_alt, get_the_author() ); if ( '' != $format_text ) { $author = sprintf( $format_text, $author ); } echo '
' . $author . '
'; } } //Displays the category list for the current post if ( ! function_exists( 'cpotheme_postpage_categories' ) ) { function cpotheme_postpage_categories( $display = false, $format_text = '' ) { $category_list = get_the_category_list( ', ' ); if ( '' != $format_text ) { $category_list = sprintf( $format_text, $category_list ); } echo '
' . $category_list . '
'; } } //Displays the number of comments for the post if ( ! function_exists( 'cpotheme_postpage_comments' ) ) { function cpotheme_postpage_comments( $display = false, $format_text = '' ) { $comments_num = get_comments_number(); //Format comment texts if ( '' != $format_text ) { $text = $format_text; } else { if ( 0 == $comments_num ) { $text = __( 'No Comments', 'allegiant' ); } elseif ( 1 == $comments_num ) { $text = __( 'One Comment', 'allegiant' ); } else { $text = __( '%1$s Comments', 'allegiant' ); } } $comments = sprintf( $text, number_format_i18n( $comments_num ) ); echo '
' . sprintf( '%2$s', get_permalink( get_the_ID() ) . '#comments', $comments ) . '
'; } } //Displays the post tags if ( ! function_exists( 'cpotheme_postpage_tags' ) ) { function cpotheme_postpage_tags( $display = false, $before = '', $separator = ', ', $after = '' ) { echo '
'; the_tags( $before, $separator, $after ); echo '
'; } } //Display Read More link for post excerpts if ( ! function_exists( 'cpotheme_postpage_readmore' ) ) { function cpotheme_postpage_readmore( $classes = '' ) { if ( ! is_singular( 'post' ) ) { echo ''; echo apply_filters( 'cpotheme_readmore', __( 'Read More', 'allegiant' ) ); echo ''; } } } //Displays the author box if ( ! function_exists( 'cpotheme_author' ) ) { function cpotheme_author() { if ( get_the_author_meta( 'description' ) ) { if ( function_exists( 'ts_fab_add_author_box' ) ) { echo ts_fab_add_author_box( '' ); } else { echo '
'; echo '
'; echo '
' . get_avatar( get_the_author_meta( 'user_email' ), 100 ) . '
'; echo '
'; echo '

'; echo '' . get_the_author() . ''; echo '

'; echo '
'; the_author_meta( 'description' ); echo '
'; //Social links echo '
'; $user_meta = get_the_author_meta( 'user_url' ); if ( '' != $user_meta ) { echo '' . __( 'Website', 'allegiant' ) . ''; } $user_meta = get_the_author_meta( 'facebook' ); if ( '' != $user_meta ) { echo '' . __( 'Facebook', 'allegiant' ) . ''; } $user_meta = get_the_author_meta( 'twitter' ); if ( '' != $user_meta ) { echo '' . __( 'Twitter', 'allegiant' ) . ''; } $user_meta = get_the_author_meta( 'googleplus' ); if ( '' != $user_meta ) { echo '' . __( 'Google+', 'allegiant' ) . ''; } do_action( 'cpotheme_author_links' ); echo '
'; echo '
'; echo '
'; echo '
'; } } } remove_filter( 'the_content', 'ts_fab_add_author_box', 15 ); } //Displays visual media of a particular post if ( ! function_exists( 'cpotheme_post_media' ) ) { function cpotheme_post_media( $post_id ) { the_post_thumbnail( 'full', array( 'class' => 'single-image' ) ); } } //Paginates a single post's content by using a numbered list if ( ! function_exists( 'cpotheme_pagination' ) ) { function cpotheme_pagination() { $query = $GLOBALS['wp_query']; $current_page = max( 1, absint( $query->get( 'paged' ) ) ); $total_pages = max( 1, absint( $query->max_num_pages ) ); if ( 1 == $total_pages ) { return; } $pages_to_show = 8; $larger_page_to_show = 10; $larger_page_multiple = 2; $pages_to_show_minus_1 = $pages_to_show - 1; $half_page_start = floor( $pages_to_show_minus_1 / 2 ); $half_page_end = ceil( $pages_to_show_minus_1 / 2 ); $start_page = $current_page - $half_page_start; $end_page = $current_page + $half_page_end; if ( ( $end_page - $start_page ) != $pages_to_show_minus_1 ) { $end_page = $start_page + $pages_to_show_minus_1; } if ( $end_page > $total_pages ) { $start_page = $total_pages - $pages_to_show_minus_1; $end_page = $total_pages; } if ( $start_page < 1 ) { $start_page = 1; } $out = ''; //First Page Link if ( 1 == $current_page ) { $out .= '' . __( 'First', 'allegiant' ) . ''; } else { $out .= '' . __( 'First', 'allegiant' ) . ''; } //Show each page foreach ( range( $start_page, $end_page ) as $i ) { if ( $i == $current_page ) { $out .= "$i"; } else { $out .= '' . $i . ''; } } //Last Page Link if ( $total_pages == $current_page ) { $out .= '' . __( 'Last', 'allegiant' ) . ''; } else { $out .= '' . __( 'Last', 'allegiant' ) . ''; } $out = ''; echo $out; } } //Paginates a list of posts, such as the blog or portfolio if ( ! function_exists( 'cpotheme_numbered_pagination' ) ) { function cpotheme_numbered_pagination( $query = '' ) { global $wp_query; if ( '' != $query ) { $total_pages = $query->max_num_pages; } else { $total_pages = $wp_query->max_num_pages; } if ( $total_pages > 1 ) { echo ''; } } } //Paginates a single post by using a numbered list if ( ! function_exists( 'cpotheme_post_pagination' ) ) { function cpotheme_post_pagination() { wp_link_pages( array( 'before' => '
', 'after' => '
', 'pagelink' => '%', 'separator' => '', ) ); } } //Prints the main navigation menu if ( ! function_exists( 'cpotheme_menu' ) ) { function cpotheme_menu( $options = null ) { if ( has_nav_menu( 'main_menu' ) ) { if ( isset( $options['toggle'] ) && true == $options['toggle'] ) { cpotheme_menu_toggle(); } wp_nav_menu( array( 'menu_id' => 'menu-main', 'menu_class' => 'menu-main', 'theme_location' => 'main_menu', 'depth' => '4', 'fallback_cb' => 'cpotheme_default_menu', 'container' => false, ) ); } } } //Prints the mobile navigation menu if ( ! function_exists( 'cpotheme_mobile_menu' ) ) { add_action( 'cpotheme_before_main', 'cpotheme_mobile_menu' ); function cpotheme_mobile_menu( $options = null ) { if ( has_nav_menu( 'main_menu' ) ) { echo ''; wp_nav_menu( array( 'menu_id' => 'menu-mobile', 'menu_class' => 'menu-mobile', 'theme_location' => 'main_menu', 'depth' => '4', 'container' => false, 'fallback_cb' => 'cpotheme_default_menu', 'walker' => new Cpotheme_Menu_Walker(), ) ); } } } //Prints the main navigation menu if ( ! function_exists( 'cpotheme_menu_toggle' ) ) { function cpotheme_menu_toggle() { if ( has_nav_menu( 'main_menu' ) ) { echo ''; } } } //Prints the footer navigation menu if ( ! function_exists( 'cpotheme_top_menu' ) ) { function cpotheme_top_menu() { if ( has_nav_menu( 'top_menu' ) ) { echo '
'; wp_nav_menu( array( 'menu_class' => 'menu-top', 'theme_location' => 'top_menu', 'depth' => 1, 'fallback_cb' => null, 'walker' => new Cpotheme_Menu_Walker(), ) ); echo '
'; } } } //Prints the footer navigation menu if ( ! function_exists( 'cpotheme_footer_menu' ) ) { function cpotheme_footer_menu() { if ( has_nav_menu( 'footer_menu' ) ) { echo '
'; wp_nav_menu( array( 'menu_class' => 'menu-footer', 'theme_location' => 'footer_menu', 'depth' => '1', 'fallback_cb' => false, 'walker' => new Cpotheme_Menu_Walker(), ) ); echo '
'; } } } //Prints a custom navigation menu based around a single taxonomy if ( ! function_exists( 'cpotheme_secondary_menu' ) ) { function cpotheme_secondary_menu( $taxonomy = 'cpo_portfolio_category', $class ) { if ( taxonomy_exists( $taxonomy ) ) { $feature_posts = get_terms( $taxonomy, 'order=ASC&orderby=name' ); if ( sizeof( $feature_posts ) > 0 ) { $current_id = cpotheme_current_id(); echo ''; } } } } //TODO: Print a default navigation menu when there is none, using the theme markup if ( ! function_exists( 'cpotheme_default_menu' ) ) { function cpotheme_default_menu() { $args = array( 'sort_column' => 'menu_order, post_title' ); $pages = get_pages( $args ); if ( $pages ) { $count = 0; $output = ''; $output .= ''; } echo $output; } } //Print comment protected message if ( ! function_exists( 'cpotheme_comments_protected' ) ) { function cpotheme_comments_protected() { if ( post_password_required() ) { echo '

'; _e( 'This page is protected. Please type the password to be able to read its contents.', 'allegiant' ); echo '

'; return true; } return false; } } //Print comment list title if ( ! function_exists( 'cpotheme_comments_title' ) ) { function cpotheme_comments_title() { echo '

'; if ( 1 == get_comments_number() ) { _e( 'One comment', 'allegiant' ); } else { printf( __( '%s comments', 'allegiant' ), number_format_i18n( get_comments_number() ) ); } echo '

'; } } //Print comment markup if ( ! function_exists( 'cpotheme_comment' ) ) { function cpotheme_comment( $comment, $args, $depth ) { $GLOBALS['comment'] = $comment; //Normal Comments switch ( $comment->comment_type ) : case 'comment': ?>
  • id="comment-">
    $depth, 'max_depth' => $args['max_depth'], ) ) ); ?>
    comment_approved ) : ?>
  • 1 && get_option( 'page_comments' ) ) { echo '
    '; echo '
    '; previous_comments_link( __( 'Older', 'allegiant' ) ); echo '
    '; echo '
    '; next_comments_link( __( 'Newer', 'allegiant' ) ); echo '
    '; echo '
    '; } } }