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' => '
',
) );
register_sidebar( array(
'name' => __( 'Footer Column1', 'builder-lite' ),
'id' => 'footer-column1',
'description' => __( 'Add widgets here.', 'builder-lite' ),
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
) );
register_sidebar( array(
'name' => __( 'Footer Column2', 'builder-lite' ),
'id' => 'footer-column2',
'description' => __( 'Add widgets here.', 'builder-lite' ),
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
) );
register_sidebar( array(
'name' => __( 'Footer Column3', 'builder-lite' ),
'id' => 'footer-column3',
'description' => __( 'Add widgets here.', 'builder-lite' ),
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
) );
register_sidebar( array(
'name' => __( 'Footer Column4', 'builder-lite' ),
'id' => 'footer-column4',
'description' => __( 'Add widgets here.', 'builder-lite' ),
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
) );
}
add_action( 'widgets_init', 'builder_lite_widgets_init' );
/**
* Admin Scripts
*/
if ( ! function_exists( 'builder_lite_admin_scripts' ) ) :
function builder_lite_admin_scripts( $hook ) {
if ( 'appearance_page_builder-lite-theme-info' != $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 );
/**
* 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';
/**
* 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';