has('feed_block')) { require(JVB_DIR . '/inc/blocks/FeedBlock.php'); new JVBase\blocks\FeedBlock(); } if (Features::forSite()->has('is_restaurant')) { require(JVB_DIR . '/inc/blocks/MenuBlock.php'); new JVBase\blocks\MenuBlock(); } if (Features::forSite()->has('faq') || array_key_exists('faq', JVB_CONTENT)) { require(JVB_DIR . '/inc/blocks/FAQBlock.php'); new JVBase\blocks\FAQBlock(); } if (Features::anyContentHas('is_gallery')) { require(JVB_DIR . '/inc/blocks/GlossaryBlock.php'); new JVBase\blocks\GlossaryBlock(); } require(JVB_DIR . '/inc/blocks/SummaryBlock.php'); new JVBase\blocks\SummaryBlock(); require(JVB_DIR . '/inc/blocks/VideoCoverBlock.php'); new JVBase\blocks\VideoCoverBlock(); require(JVB_DIR . '/inc/blocks/FormBlock.php'); new JVBase\blocks\FormBlock(); function jvbRegisterBlockCategory(array $categories):array { return array_merge($categories, [ [ 'slug' => 'jvb', 'title' => get_bloginfo('name'), 'icon' => 'art' ] ]); } add_filter('block_categories_all', 'jvbRegisterBlockCategory'); if (Features::hasIntegration('gmb')) { require(JVB_DIR . '/build/gmbreviews/render.php'); } function jvbRegisterBlocks():void { if (Features::hasIntegration('gmb')) { register_block_type( JVB_DIR . '/build/gmbreviews', [ 'render_callback' => 'jvbRenderGMBReviewsBlock' ]); } // if (jvbSiteUsesFeedBlock()) { // register_block_type( // JVB_DIR . '/build/feed', // [ // 'render_callback' => 'jvbRenderFeedBlock' // ] // ); // } if (Features::anyContentHas('show_directory') || Features::anyTaxonomyHas('show_directory')) { register_block_type( JVB_DIR . '/build/list', [ 'render_callback' => 'jvbRenderListBlock' ] ); } } add_action('init', 'jvbRegisterBlocks');