implode('&family=', $font_families), 'display' => 'swap', ), 'https://fonts.googleapis.com/css2'); return esc_url_raw($fonts_url); } endif; if (!function_exists('blogcraft_read_more_render')): function blogcraft_read_more_render() { ?>
theme_location) { $svg = Blogcraft_SVG_Icons::get_theme_svg_name($item->url); if (empty($svg)) { $svg = blogcraft_the_theme_svg('link', $return = true); } $item_output = str_replace($args->link_after, '' . $svg, $item_output); } return $item_output; } endif; add_filter('walker_nav_menu_start_el', 'blogcraft_social_menu_icon', 10, 4); if (!function_exists('blogcraft_add_sub_toggles_to_main_menu')) : function blogcraft_add_sub_toggles_to_main_menu($args, $item, $depth) { // Add sub menu toggles to the Expanded Menu with toggles. if (isset($args->show_toggles) && $args->show_toggles) { // Wrap the menu item link contents in a div, used for positioning. $args->before = ''; // Add sub menu icons to the primary menu without toggles. } elseif ('blogcraft-primary-menu' === $args->theme_location) { if (in_array('menu-item-has-children', $item->classes, true)) { $args->after = '' . blogcraft_the_theme_svg('arrow-down', true) . ''; } else { $args->after = ''; } } return $args; } endif; add_filter('nav_menu_item_args', 'blogcraft_add_sub_toggles_to_main_menu', 10, 3); if (!function_exists('blogcraft_sanitize_sidebar_option_meta')) : // Sidebar Option Sanitize. function blogcraft_sanitize_sidebar_option_meta($input) { $metabox_options = array('global-sidebar', 'left-sidebar', 'right-sidebar', 'no-sidebar'); if (in_array($input, $metabox_options)) { return $input; } else { return ''; } } endif; if (!function_exists('blogcraft_page_lists')) : // Page List. function blogcraft_page_lists() { $page_lists = array(); $page_lists[''] = esc_html__('-- Select Page --', 'blogcraft'); $pages = get_pages(); foreach ($pages as $page) { $page_lists[$page->ID] = $page->post_title; } return $page_lists; } endif; if (!function_exists('blogcraft_sanitize_post_layout_option_meta')) : // Sidebar Option Sanitize. function blogcraft_sanitize_post_layout_option_meta($input) { $metabox_options = array('global-layout', 'layout-1', 'layout-2'); if (in_array($input, $metabox_options)) { return $input; } else { return ''; } } endif; if (!function_exists('blogcraft_sanitize_header_overlay_option_meta')) : // Sidebar Option Sanitize. function blogcraft_sanitize_header_overlay_option_meta($input) { $metabox_options = array('global-layout', 'enable-overlay'); if (in_array($input, $metabox_options)) { return $input; } else { return ''; } } endif; /** * Blogcraft SVG Icon helper functions * * @package Blogcraft * @since 1.0.0 */ if (!function_exists('blogcraft_the_theme_svg')): /** * Output and Get Theme SVG. * Output and get the SVG markup for an icon in the Blogcraft_SVG_Icons class. * * @param string $svg_name The name of the icon. * @param string $group The group the icon belongs to. * @param string $color Color code. */ function blogcraft_the_theme_svg($svg_name, $return = false) { if ($return) { return blogcraft_get_theme_svg($svg_name); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped in blogcraft_get_theme_svg();. } else { echo blogcraft_get_theme_svg($svg_name); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped in blogcraft_get_theme_svg();. } } endif; if (!function_exists('blogcraft_get_theme_svg')): /** * Get information about the SVG icon. * * @param string $svg_name The name of the icon. * @param string $group The group the icon belongs to. * @param string $color Color code. */ function blogcraft_get_theme_svg($svg_name) { // Make sure that only our allowed tags and attributes are included. $svg = wp_kses( Blogcraft_SVG_Icons::get_svg($svg_name), array( 'svg' => array( 'class' => true, 'xmlns' => true, 'width' => true, 'height' => true, 'viewbox' => true, 'aria-hidden' => true, 'role' => true, 'focusable' => true, ), 'path' => array( 'fill' => true, 'fill-rule' => true, 'd' => true, 'transform' => true, ), 'polygon' => array( 'fill' => true, 'fill-rule' => true, 'points' => true, 'transform' => true, 'focusable' => true, ), ) ); if (!$svg) { return false; } return $svg; } endif; if (!function_exists('blogcraft_post_category_list')) : // Post Category List. function blogcraft_post_category_list($select_cat = true) { $post_cat_lists = get_categories( array( 'hide_empty' => '0', 'exclude' => '1', ) ); $post_cat_cat_array = array(); if ($select_cat) { $post_cat_cat_array[''] = esc_html__('-- Select Category --', 'blogcraft'); } foreach ($post_cat_lists as $post_cat_list) { $post_cat_cat_array[$post_cat_list->slug] = $post_cat_list->name; } return $post_cat_cat_array; } endif; if (!function_exists('blogcraft_sanitize_meta_pagination')): /** Sanitize Enable Disable Checkbox **/ function blogcraft_sanitize_meta_pagination($input) { $valid_keys = array('global-layout', 'no-navigation', 'norma-navigation', 'ajax-next-post-load'); if (in_array($input, $valid_keys)) { return $input; } return ''; } endif; if (!function_exists('blogcraft_disable_post_views')): /** Disable Post Views **/ function blogcraft_disable_post_views() { add_filter('booster_extension_filter_views_ed', function () { return false; }); } endif; if (!function_exists('blogcraft_disable_post_read_time')): /** Disable Read Time **/ function blogcraft_disable_post_read_time() { add_filter('booster_extension_filter_readtime_ed', function () { return false; }); } endif; if (!function_exists('blogcraft_disable_post_like_dislike')): /** Disable Like Dislike **/ function blogcraft_disable_post_like_dislike() { add_filter('booster_extension_filter_like_ed', function () { return false; }); } endif; if (!function_exists('blogcraft_disable_post_author_box')): /** Disable Author Box **/ function blogcraft_disable_post_author_box() { add_filter('booster_extension_filter_ab_ed', function () { return false; }); } endif; add_filter('booster_extension_filter_ss_ed', function () { return false; }); if (!function_exists('blogcraft_disable_post_reaction')): /** Disable Reaction **/ function blogcraft_disable_post_reaction() { add_filter('booster_extension_filter_reaction_ed', function () { return false; }); } endif; if (!function_exists('blogcraft_post_floating_nav')): function blogcraft_post_floating_nav() { $blogcraft_default = blogcraft_get_default_theme_options(); $ed_floating_next_previous_nav = get_theme_mod('ed_floating_next_previous_nav', $blogcraft_default['ed_floating_next_previous_nav']); if ('post' === get_post_type() && $ed_floating_next_previous_nav) { $next_post = get_next_post(); $prev_post = get_previous_post(); if (isset($prev_post->ID)) { $prev_link = get_permalink($prev_post->ID); ?> ID)) { $next_link = get_permalink($next_post->ID); ?> ID; if ($twp_navigation_type == '' || $twp_navigation_type == 'global-layout') { $twp_navigation_type = get_theme_mod('twp_navigation_type', $blogcraft_default['twp_navigation_type']); } if ($twp_navigation_type != 'no-navigation' && 'post' === get_post_type()) { if ($twp_navigation_type == 'norma-navigation') { ?> ID)) { $next_post_id = $next_post->ID; echo ''; } } } } endif; add_action('blogcraft_navigation_action', 'blogcraft_single_post_navigation', 30); if (!function_exists('blogcraft_header_banner_section')) : function blogcraft_header_banner_section() { $blogcraft_default = blogcraft_get_default_theme_options(); $ed_header_banner = get_theme_mod('ed_header_banner', $blogcraft_default['ed_header_banner']); if ($ed_header_banner) { $header_banner_title = get_theme_mod('header_banner_title', $blogcraft_default['header_banner_title']); $header_banner_description = get_theme_mod('header_banner_description', $blogcraft_default['header_banner_description']); $header_banner_title_link = get_theme_mod('header_banner_title_link', $blogcraft_default['header_banner_title_link']); $header_button_title = get_theme_mod('header_button_title', $blogcraft_default['header_button_title']); $header_image_url = get_header_image() ?>