tag in the document head, and expect WordPress to * provide it for us. */ add_theme_support('title-tag'); /* * Enable support for Post Thumbnails on posts and pages. * * @link https://developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/ */ add_theme_support('post-thumbnails'); // This theme uses wp_nav_menu() in one location. register_nav_menus(array( 'primary' => __('Primary', 'builder-lite'), )); /* * Switch default core markup for search form, comment form, and comments * to output valid HTML5. */ add_theme_support('html5', array( 'comment-form', 'comment-list', 'gallery', 'caption', )); // Set up the WordPress core custom background feature. add_theme_support('custom-background', apply_filters('builder_litel_custom_background_args', array( 'default-color' => 'ffffff', 'default-image' => '', ))); // Add theme support for selective refresh for widgets. add_theme_support('customize-selective-refresh-widgets'); } endif; add_action('after_setup_theme', 'builder_lite_setup'); /** * Custom Logo * * */ function builder_lite_logo_setup() { add_theme_support('custom-logo', array( 'height' => 60, 'width' => 180, 'flex-height' => true, 'flex-width' => true, )); } add_action('after_setup_theme', 'builder_lite_logo_setup'); /** * Set the content width in pixels, based on the theme's design and stylesheet. * * Priority 0 to make it available to lower priority callbacks. * * @global int $content_width */ function builder_lite_content_width() { $GLOBALS['content_width'] = apply_filters('builder_lite_content_width', 640); } add_action('after_setup_theme', 'builder_lite_content_width', 0); /** * Register widget area. * * @link https://developer.wordpress.org/themes/functionality/sidebars/#registering-a-sidebar */ function builder_lite_widgets_init() { register_sidebar(array( 'name' => __('Blog Sidebar', 'builder-lite'), 'id' => 'sidebar-1', 'description' => __('Add widgets here.', 'builder-lite'), 'before_widget' => '', 'before_title' => '

', 'after_title' => '

', )); register_sidebar(array( 'name' => __('Footer Column1', 'builder-lite'), 'id' => 'footer-column1', 'description' => __('Add widgets here.', 'builder-lite'), 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', )); register_sidebar(array( 'name' => __('Footer Column2', 'builder-lite'), 'id' => 'footer-column2', 'description' => __('Add widgets here.', 'builder-lite'), 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', )); register_sidebar(array( 'name' => __('Footer Column3', 'builder-lite'), 'id' => 'footer-column3', 'description' => __('Add widgets here.', 'builder-lite'), 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', )); register_sidebar(array( 'name' => __('Footer Column4', 'builder-lite'), 'id' => 'footer-column4', 'description' => __('Add widgets here.', 'builder-lite'), 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', )); } add_action('widgets_init', 'builder_lite_widgets_init'); if (!function_exists('bul_asset_suffix')) : function bul_asset_suffix() { $suffix = '.min'; if (defined('WP_DEBUG') && WP_DEBUG) { $suffix = ''; } return $suffix; } endif; /** * Admin Scripts */ if (!function_exists('builder_lite_admin_scripts')) : function builder_lite_admin_scripts($hook) { if ('appearance_page_builder-lite-theme-info' != $hook && 'themes.php' != $hook) { return; } wp_enqueue_style('builder-lite-info-css', get_template_directory_uri() . '/assets/css/builder-lite-theme-info.css', false); } endif; add_action('admin_enqueue_scripts', 'builder_lite_admin_scripts'); /** * Display Dynamic CSS. */ function builder_lite_dynamic_css_wrap() { require_once(get_parent_theme_file_path('/inc/dynamic-styles.php')); ?> urlencode(implode('|', $fonts)) ), 'https://fonts.googleapis.com/css'); } return $fonts_url; } /** * Custom excerpt length. */ function builder_lite_my_excerpt_length($length) { if (is_admin()) { return $length; } return 25; } add_filter('excerpt_length', 'builder_lite_my_excerpt_length'); /** * Registers an editor stylesheet for the theme. */ function builder_lite_theme_add_editor_styles() { add_editor_style(get_template_directory_uri() . '/assets/css/custom-editor-style.css'); } add_action('admin_init', 'builder_lite_theme_add_editor_styles'); /** * Custom search form */ function builder_lite_search_form($form) { $form = ''; return $form; } add_filter('get_search_form', 'builder_lite_search_form', 100); /** *Excerpt More */ function builder_lite_excerpt_more($more) { if (is_admin()) { return $more; } return '…'; } add_filter('excerpt_more', 'builder_lite_excerpt_more'); /** * Add a pingback url auto-discovery header for singularly identifiable articles. */ function builder_lite_pingback_header() { if (is_singular() && pings_open()) { printf('' . "\n", get_bloginfo('pingback_url')); } } add_action('wp_head', 'builder_lite_pingback_header'); /** * Using home page title instead of site name */ if (!function_exists('builder_lite_breadcrumb_title')) : function builder_lite_breadcrumb_title($title, $type, $id) { if ($type[0] === 'home') { $title = get_the_title(get_option('page_on_front')); } return $title; } endif; add_filter('bcn_breadcrumb_title', 'builder_lite_breadcrumb_title', 42, 3); if (!function_exists('builder_lite_get_pro_url')) : /** * Returns an URL with utm tags * the admin settings page. * * @param string $url URL fo the site. * @param string $source utm source. * @param string $medium utm medium. * @param string $campaign utm campaign. * @return mixed */ function builder_lite_get_pro_url($url, $source = '', $medium = '', $campaign = '') { $url = trailingslashit($url); // Set up our URL if we have a source. if (isset($source)) { $url = add_query_arg('utm_source', sanitize_text_field($source), $url); } // Set up our URL if we have a medium. if (isset($medium)) { $url = add_query_arg('utm_medium', sanitize_text_field($medium), $url); } // Set up our URL if we have a campaign. if (isset($campaign)) { $url = add_query_arg('utm_campaign', sanitize_text_field($campaign), $url); } return esc_url($url); } endif; /** * Set homepage and blog page after demo import */ function builder_lite_after_import_setup() { //Assign menus to their locations $main_menu = get_term_by('name', 'Primary', 'nav_menu'); set_theme_mod('nav_menu_locations', array( 'primary' => $main_menu->term_id, ) ); //Assign front page $front_page = get_page_by_title('Home'); $blog_page = get_page_by_title('Blog'); update_option('show_on_front', 'page'); update_option('page_on_front', $front_page->ID); update_option('page_for_posts', $blog_page->ID); } add_action('pt-ocdi/after_import', 'builder_lite_after_import_setup'); require_once get_template_directory() . '/inc/tgm-plugin-activation/builder-lite-tgm-plugin-activation.php'; if (is_admin()) { /** * Admin Menu Settings */ require_once get_template_directory() . '/inc/admin/class-builder-lite-admin-settings.php'; } /** * Customizer additions. */ require get_template_directory() . '/inc/customizer/customizer.php'; /* * Header hooks */ require get_template_directory() . '/inc/hooks/header-hooks.php'; /* * Footer hooks */ require get_template_directory() . '/inc/hooks/footer-hooks.php'; /** * Template functions */ require get_template_directory() . '/inc/template-functions.php'; /** * Custom template tags for this theme. */ require get_template_directory() . '/inc/template-tags.php'; /** * Extra classes for this theme. */ require get_template_directory() . '/inc/extras.php';