get( 'Version' ) ); /** Check if the WordPress version is 5.5 or higher, and if the PHP version is at least 7.2. If not, do not activate. */ if ( version_compare( $GLOBALS['wp_version'], '5.5', '<' ) || version_compare( PHP_VERSION_ID, '70200', '<' ) ) { require get_template_directory() . '/inc/back-compat.php'; return; } // composer autoloader require_once 'vendor/autoload.php'; // check for minimum Duper Duper version if ( ! defined( 'SUPER_DUPER_VER' ) || version_compare( SUPER_DUPER_VER, '1.1.4', '<' ) ) { function bs_super_duper_update_notice() { $class = 'notice notice-error'; $message = __( 'Please IMMEDIATELY update any AyeCode plugins, your site will not load correctly as an older CLASS is detected.', 'blockstrap' ); printf( '

%2$s

', esc_attr( $class ), esc_html( $message ) ); } add_action( 'admin_notices', 'bs_super_duper_update_notice' ); return; // bail if older class, so we don't error out. } // Theme support. require_once 'classes/class-blockstrap-theme-support.php'; // Filter Comments. require_once 'classes/class-blockstrap-comments.php'; // Block Filters. require_once 'classes/class-blockstrap-block-filters.php'; // Block styles. require_once 'inc/block-styles.php'; // Block patterns. require_once 'inc/block-patterns.php'; // Header block patterns. require_once 'inc/header-block-patterns.php'; // Footer block patterns. require_once 'inc/footer-block-patterns.php'; // Hero block patterns. require_once 'inc/hero-block-patterns.php'; // Page layout block patterns. require_once 'inc/page-layout-block-patterns.php'; // Query block patterns. require_once 'inc/query-block-patterns.php'; // Blocks require_once 'blocks/class-blockstrap-widget-container.php'; require_once 'blocks/class-blockstrap-widget-navbar.php'; require_once 'blocks/class-blockstrap-widget-navbar-brand.php'; require_once 'blocks/class-blockstrap-widget-nav.php'; require_once 'blocks/class-blockstrap-widget-nav-item.php'; require_once 'blocks/class-blockstrap-widget-nav-dropdown.php'; require_once 'blocks/class-blockstrap-widget-shape-divider.php'; require_once 'blocks/class-blockstrap-widget-button.php'; require_once 'blocks/class-blockstrap-widget-heading.php'; require_once 'blocks/class-blockstrap-widget-post-title.php'; require_once 'blocks/class-blockstrap-widget-archive-title.php'; require_once 'blocks/class-blockstrap-widget-image.php'; require_once 'blocks/class-blockstrap-widget-map.php'; require_once 'blocks/class-blockstrap-widget-counter.php'; require_once 'blocks/class-blockstrap-widget-gallery.php'; require_once 'blocks/class-blockstrap-widget-tabs.php'; require_once 'blocks/class-blockstrap-widget-tab.php'; require_once 'blocks/class-blockstrap-widget-icon-box.php'; require_once 'blocks/class-blockstrap-widget-skip-links.php'; /** * Enqueue the style.css file. * * @since 1.0.0 */ function blockstrap_styles() { wp_enqueue_style( 'blockstrap-style', get_theme_file_uri( 'assets/css/style.css' ), '', BLOCKSTRAP_VERSION ); wp_enqueue_style( 'blockstrap-shared-stylez', get_theme_file_uri( 'assets/css/style-shared.css' ), '', BLOCKSTRAP_VERSION ); wp_enqueue_script( 'blockstrap-block-filters' ); } add_action( 'wp_enqueue_scripts', 'blockstrap_styles' ); /** * Show '(No title)' if post has no title. */ add_filter( 'the_title', function ( $title ) { if ( ! is_admin() && empty( $title ) ) { $title = __( '(No title)', 'blockstrap' ); } return $title; } ); /** * Force blocks to render shortcodes. * * There is a bug where shortcodes are not renders in template files. * * @todo remove this or make it more specific once this bug is resolved https://github.com/WordPress/gutenberg/issues/35258 * * @param string $block_content The HTML content of the block. * @param array $block The full block, including name and attributes. * * @return mixed */ function blockstrap_force_render_blocks_on_templates( $block_content, $block ) { return do_shortcode( $block_content ); } add_filter( 'render_block', 'blockstrap_force_render_blocks_on_templates', 10, 2 ); /** * Add our BSUI body class. * * @param $classes * * @return mixed */ function bs_body_class( $classes ) { $classes[] = 'bsui'; return $classes; } add_filter( 'body_class', 'bs_body_class' ); /** * Add our block filters. * * @return void */ function bs_enqueue_block_editor_assets() { wp_enqueue_script( 'blockstrap-block-filters', get_template_directory_uri() . '/assets/js/blockstrap-block-filters.js', array( 'wp-block-library', 'wp-element', 'wp-i18n' ), // required dependencies for blocks BLOCKSTRAP_VERSION ); wp_enqueue_style( 'blockstrap-style', get_theme_file_uri( 'assets/css/style.css' ), '', BLOCKSTRAP_VERSION ); } add_action( 'enqueue_block_editor_assets', 'bs_enqueue_block_editor_assets', 1000 );