' . "\n", esc_url(get_bloginfo('pingback_url'))); } } /** * Schema for tag. */ if (!function_exists('kemet_schema_body')): /** * Adds schema tags to the body classes. * */ function kemet_schema_body() { // Check conditions. $is_blog = (is_home() || is_archive() || is_attachment() || is_tax() || is_single()) ? true : false; // Set up default itemtype. $itemtype = 'WebPage'; // Get itemtype for the blog. $itemtype = ($is_blog) ? 'Blog' : $itemtype; // Get itemtype for search results. $itemtype = (is_search()) ? 'SearchResultsPage' : $itemtype; // Get the result. $result = apply_filters('kemet_schema_body_itemtype', $itemtype); // Return our HTML. echo apply_filters('kemet_schema_body', "itemtype='https://schema.org/" . esc_attr($result) . "' itemscope='itemscope'"); } endif; /** * Adds custom classes to the array of body classes. */ if (!function_exists('kemet_body_classes')) { /** * Adds custom classes to the array of body classes. * * @param array $classes Classes for the body element. * @return array */ function kemet_body_classes($classes) { if (wp_is_mobile()) { $classes[] = 'kmt-header-break-point'; } // Apply separate container class to the body. $content_layout = kemet_get_content_layout(); if ('content-boxed-container' == $content_layout) { $classes[] = 'kmt-separate-container'; } elseif ('boxed-container' == $content_layout) { $classes[] = 'kmt-separate-container kmt-two-container'; } elseif ('page-builder' == $content_layout) { $classes[] = 'kmt-page-builder-template'; } elseif ('plain-container' == $content_layout) { $classes[] = 'kmt-plain-container'; } // Sidebar location. $page_layout = 'kmt-' . kemet_layout(); $classes[] = $page_layout; // Current Kemet verion. $classes[] = 'kemet-' . KEMET_THEME_VERSION; $outside_menu = kemet_get_option('header-display-outside-menu'); $header_layout = apply_filters('kemet_primary_header_layout', kemet_get_option('header-layouts')); if ($outside_menu || $header_layout != 'header-main-layout-3') { $classes[] = 'kmt-header-custom-item-outside'; } else { $classes[] = 'kmt-header-custom-item-inside'; } //Footer $kemet_sticky_footer = kemet_get_option('enable-sticky-footer'); if ($kemet_sticky_footer) { $classes[] = 'kmt-sticky-footer'; } return $classes; } } add_filter('body_class', 'kemet_body_classes'); /** * Kemet Pagination */ if (!function_exists('kemet_number_pagination')) { /** * Kemet Pagination * */ function kemet_number_pagination() { global $numpages; $enabled = apply_filters('kemet_pagination_enabled', true); if (isset($numpages) && $enabled) { ob_start(); echo "
"; the_posts_pagination( array( 'prev_text' => kemet_theme_strings('string-blog-navigation-previous', false), 'next_text' => kemet_theme_strings('string-blog-navigation-next', false), 'taxonomy' => 'category', 'in_same_term' => true, ) ); echo '
'; $output = ob_get_clean(); echo apply_filters('kemet_pagination_markup', $output); // WPCS: XSS OK. } } } add_action('kemet_pagination', 'kemet_number_pagination'); /** * Return or echo site logo markup. */ if (!function_exists('kemet_logo')) { /** * Return or echo site logo markup. * * @return mixed echo or return markup. */ function kemet_logo($echo = true) { $display_site_tagline = kemet_get_option('display-site-tagline'); $display_site_title = kemet_get_option('display-site-title'); $html = ''; $has_custom_logo = apply_filters('kemet_has_custom_logo', has_custom_logo()); // Site logo. $html .= ''; if ($has_custom_logo) { if (apply_filters('kemet_replace_logo_width', true)) { add_filter('wp_get_attachment_image_src', 'kemet_replace_header_logo', 10, 4); } $html .= get_custom_logo(); } $html .= ''; if (!apply_filters('kemet_disable_site_identity', false)) { // Site Title. $tag = 'span'; /** * Filters the tags for site title. * * * @param string $tags string containing the HTML tags for Site Title. */ $tag = apply_filters('kemet_site_title_tag', $tag); $site_title_markup = '<' . $tag . ' itemprop="name" class="site-title"> '; // Site Description. $site_tagline_markup = '

' . get_bloginfo('description') . '

'; if ($display_site_title || $display_site_tagline) { /* translators: 1: Site Title Markup, 2: Site Tagline Markup */ $html .= sprintf( '
%1$s %2$s
', ($display_site_title) ? $site_title_markup : '', ($display_site_tagline) ? $site_tagline_markup : '' ); } } $html = apply_filters('kemet_logo', $html, $display_site_title, $display_site_tagline); /** * Echo or Return the Logo Markup */ if ($echo) { echo $html; } else { return $html; } } } /** * Return the selected sections */ if (!function_exists('kemet_get_dynamic_header_content')) { /** * Return the selected sections * * @param string $option Custom content type. E.g. search, text-html etc. * @return array Array of Custom contents. */ function kemet_get_dynamic_header_content($option) { $output = array(); $sections = kemet_get_option($option); if (is_array($sections)) { foreach ($sections as $section) { switch ($section) { case 'search': $output[] = kemet_get_search($option); break; case 'text-html': $output[] = kemet_get_custom_html($option . '-html'); break; case 'kmt-widget': $output[] = kemet_get_custom_widget($option); break; default: $output[] = apply_filters('kemet_get_dynamic_header_content', '', $option, $sections); break; } } } return $output; } } /** * Adding Wrapper for Search Form. */ if (!function_exists('kemet_get_search')) { /** * Adding Wrapper for Search Form. * * @param string $option Search Option name. * @return mixed Search HTML structure created. */ function kemet_get_search($option = '') { $search_style = kemet_get_option('search-style'); $box_shadow = ''; $search_box_shadow = kemet_get_option('search-box-shadow'); if ($search_box_shadow == true) { $box_shadow = 'search-box-shadow'; } $search_html = '
'; $search_html .= '
' . esc_html__('Search', 'kemet') . '
'; $search_html .= '
'; $search_html .= get_search_form(false); $search_html .= '
'; $search_html .= '
'; return apply_filters('kemet_get_search', $search_html, $option); } } /** * Get custom HTML added by user. */ if (!function_exists('kemet_get_custom_html')) { /** * Get custom HTML added by user. * * @param string $option_name Option name. * @return String TEXT/HTML added by user in options panel. */ function kemet_get_custom_html($option_name = '') { $custom_html = ''; $custom_html_content = kemet_get_option($option_name); if (!empty($custom_html_content)) { $custom_html = '
' . do_shortcode($custom_html_content) . '
'; } elseif (current_user_can('edit_theme_options')) { $custom_html = '' . __('Add Custom HTML', 'kemet') . ''; } return $custom_html; } } /** * Get Widget added by user. */ if (!function_exists('kemet_get_custom_widget')) { /** * Get custom widget added by user. * * @param string $option_name Option name. * @return Widget added by user in options panel. */ function kemet_get_custom_widget($option_name = '') { ob_start(); if ('header-main-rt-section' == $option_name) { $widget_id = 'header-widget'; } if ('header-right-section' == $option_name) { $widget_id = 'header-right-section'; } if ('footer-copyright-section-1' == $option_name) { $widget_id = 'copyright-widget-1'; } elseif ('footer-copyright-section-2' == $option_name) { $widget_id = 'copyright-widget-2'; } if ('top-section-1' == $option_name) { $widget_id = 'top-widget-section1'; } elseif ('top-section-2' == $option_name) { $widget_id = 'top-widget-section2'; } if ('off-canvas-filter' == $option_name) { $widget_id = 'off-canvas-filter-widget'; } echo '
'; kemet_get_sidebar($widget_id); echo '
'; return ob_get_clean(); } } /** * Function to get Small Left/Right Footer */ if (!function_exists('kemet_get_copyright_footer')) { /** * Function to get Small Left/Right Footer * * @param string $section Sections of Small Footer. * @return mixed Markup of sections. */ function kemet_get_copyright_footer($section = '') { $copyright_footer_type = kemet_get_option($section); $output = null; switch ($copyright_footer_type) { case 'menu': $output = kemet_get_copyright_footer_menu(); break; case 'custom': $output = kemet_get_copyright_footer_custom_text($section . '-part'); break; case 'widget': $output = kemet_get_custom_widget($section); break; } return $output; } } /** * Function to get Small Footer Custom Text */ if (!function_exists('kemet_get_copyright_footer_custom_text')) { /** * Function to get Small Footer Custom Text * * @param string $option Custom text option name. * @return mixed Markup of custom text option. */ function kemet_get_copyright_footer_custom_text($option = '') { $output = $option; if ('' != $option) { $output = kemet_get_option($option); $output = str_replace('[site_title]', '' . get_bloginfo('name') . '', $output); $theme_author = apply_filters( 'kemet_theme_author', array( 'theme_name' => __('Kemet', 'kemet'), 'theme_author_url' => 'https://kemet.io/', ) ); $output = str_replace('[theme_author]', '' . $theme_author['theme_name'] . '', $output); } return do_shortcode($output); } } /** * Function to get Footer Menu */ if (!function_exists('kemet_get_copyright_footer_menu')) { /** * Function to get Footer Menu * * @return html */ function kemet_get_copyright_footer_menu() { ob_start(); if (has_nav_menu('footer_menu')) { wp_nav_menu( array( 'container' => 'div', 'container_class' => 'footer-primary-navigation', 'theme_location' => 'footer_menu', 'menu_class' => 'nav-menu', 'items_wrap' => '', 'depth' => 1, ) ); } else { if (is_user_logged_in() && current_user_can('edit_theme_options')) { ?> 'div', 'container_class' => 'top-navigation', 'theme_location' => 'top_menu', 'menu_class' => 'nav-menu', 'items_wrap' => '', //'depth' => 1, ) ); } else { if (is_user_logged_in() && current_user_can('edit_theme_options')) { ?> $right_section_menu, 'container' => 'div', 'container_class' => 'header-right-section-navigation', 'menu_class' => 'nav-menu', 'menu_id' => 'right-section-menu', 'items_wrap' => '', ) ); } return ob_get_clean(); } } /** * Function to get site Header */ if (!function_exists('kemet_header_markup')) { /** * Site Header -
* */ function kemet_header_markup() { ?>
'; echo kemet_sitehead_get_menu_items(); echo ''; } } else { $kmt_submenu_classes[] = 'submenu-with-border'; $submenu_class = apply_filters('primary_submenu_classes', implode(' ', $kmt_submenu_classes)); // Fallback Menu if primary menu not set. $fallback_menu_args = array( 'theme_location' => 'primary', 'menu_id' => 'primary-menu', 'menu_class' => 'main-navigation', 'container' => 'div', 'before' => '', ); $items_wrap = ''; // Primary Menu. $primary_menu_args = array( 'theme_location' => 'primary', 'menu_id' => 'primary-menu', 'menu_class' => 'main-header-menu kmt-flex kmt-justify-content-flex-end' . $submenu_class . $submenu_has_boxshadow, 'container' => 'div', 'container_class' => $main_menu_container_classes, 'items_wrap' => '', ); // Left Menu. $left_menu_args = array( 'theme_location' => 'left_menu', 'menu_id' => 'left-menu', 'menu_class' => 'main-header-menu kmt-flex kmt-justify-content-flex-end' . $submenu_class . $submenu_has_boxshadow, 'container' => 'div', 'container_class' => 'main-header-bar-navigation left-menu', 'items_wrap' => '', ); if (has_nav_menu('primary')) { // To add default alignment for navigation which can be added through any third party plugin. // Do not add any CSS from theme except header alignment. echo '
'; echo ''; echo '
'; } else { echo '
'; echo ''; echo '
'; } } } } add_action('kemet_sitehead_content', 'kemet_primary_navigation_markup', 10); /** * Function to get site Footer */ if (!function_exists('kemet_footer_markup')) { /** * Site Footer -