*/ define( 'BOLDWP_PROURL', 'https://themesdna.com/boldwp-pro-wordpress-theme/' ); define( 'BOLDWP_CONTACTURL', 'https://themesdna.com/contact/' ); define( 'BOLDWP_THEMEOPTIONSDIR', get_template_directory() . '/inc/admin' ); // Add new constant that returns true if WooCommerce is active define( 'BOLDWP_WOOCOMMERCE_ACTIVE', class_exists( 'WooCommerce' ) ); require_once( BOLDWP_THEMEOPTIONSDIR . '/customizer.php' ); /** * This function return a value of given theme option name from database. * * @since 1.0.0 * * @param string $option Theme option to return. * @return mixed The value of theme option. */ function boldwp_get_option($option) { $boldwp_options = get_option('boldwp_options'); if ((is_array($boldwp_options)) && (array_key_exists($option, $boldwp_options))) { return $boldwp_options[$option]; } else { return ''; } } if ( ! function_exists( 'boldwp_setup' ) ) : /** * Sets up theme defaults and registers support for various WordPress features. * * Note that this function is hooked into the after_setup_theme hook, which * runs before the init hook. The init hook is too late for some features, such * as indicating support for post thumbnails. */ function boldwp_setup() { global $wp_version; /* * Make theme available for translation. * Translations can be filed in the /languages/ directory. * If you're building a theme based on BoldWP, use a find and replace * to change 'boldwp' to the name of your theme in all the template files. */ load_theme_textdomain( 'boldwp', get_template_directory() . '/languages' ); // Add default posts and comments RSS feed links to head. add_theme_support( 'automatic-feed-links' ); /* * Let WordPress manage the document title. * By adding theme support, we declare that this theme does not use a * hard-coded 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 http://codex.wordpress.org/Function_Reference/add_theme_support#Post_Thumbnails */ add_theme_support( 'post-thumbnails' ); if ( function_exists( 'add_image_size' ) ) { add_image_size( 'boldwp-1130w-autoh-image', 1130, 9999, false ); add_image_size( 'boldwp-750w-autoh-image', 750, 9999, false ); add_image_size( 'boldwp-750w-450h-image', 750, 450, true ); add_image_size( 'boldwp-480w-360h-image', 480, 360, true ); } // This theme uses wp_nav_menu() in one location. register_nav_menus( array( 'primary' => esc_html__('Primary Menu', 'boldwp'), 'secondary' => esc_html__('Secondary Menu', 'boldwp') ) ); /* * Switch default core markup for search form, comment form, and comments * to output valid HTML5. */ $markup = array( 'comment-list', 'comment-form', 'search-form', 'gallery', 'caption' ); add_theme_support( 'html5', $markup ); add_theme_support( 'custom-logo', array( 'height' => 70, 'width' => 350, 'flex-height' => true, 'flex-width' => true, 'header-text' => array( 'site-title', 'site-description' ), ) ); // Support for Custom Header add_theme_support( 'custom-header', apply_filters( 'boldwp_custom_header_args', array( 'default-image' => '', 'default-text-color' => '333333', 'width' => 1150, 'height' => 300, 'flex-width' => true, 'flex-height' => true, 'wp-head-callback' => 'boldwp_header_style', 'uploads' => true, ) ) ); // Set up the WordPress core custom background feature. $background_args = array( 'default-color' => 'e6e6e6', 'default-image' => get_template_directory_uri() .'/assets/images/background.png', 'default-repeat' => 'repeat', 'default-position-x' => 'left', 'default-position-y' => 'top', 'default-size' => 'auto', 'default-attachment' => 'fixed', 'wp-head-callback' => '_custom_background_cb', 'admin-head-callback' => 'admin_head_callback_func', 'admin-preview-callback' => 'admin_preview_callback_func', ); add_theme_support( 'custom-background', apply_filters( 'boldwp_custom_background_args', $background_args) ); // Support for Custom Editor Style add_editor_style( 'css/editor-style.css' ); } endif; add_action( 'after_setup_theme', 'boldwp_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 boldwp_content_width() { $content_width = 744; if ( is_page_template( array( 'template-full-width-page.php', 'template-full-width-post.php' ) ) ) { $content_width = 1106; } if ( is_404() ) { $content_width = 1106; } $GLOBALS['content_width'] = apply_filters( 'boldwp_content_width', $content_width ); /* phpcs:ignore WPThemeReview.CoreFunctionality.PrefixAllGlobals.NonPrefixedVariableFound */ } add_action( 'template_redirect', 'boldwp_content_width', 0 ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/enqueue-scripts.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/widgets-init.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/social-buttons.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/post-author-bio-functions.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/postmeta.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/navigation-functions.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/menu-functions.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/layout-functions.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/header-functions.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/css-functions.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/other-functions.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/functions/custom-hooks.php' ); require_once( trailingslashit( get_template_directory() ) . 'inc/admin/custom.php' );