post_type ) ] ) { $allowed_blocks = array_merge( $allowed_blocks, THEME_SETTINGS['allowed_blocks'][ get_post_type( $post->post_type ) ] ); } return $allowed_blocks; } /** * Check whether to use classic or block editor for a certain post type as defined in the settings */ function use_block_editor_for_post_type( $use_block_editor, $post_type ) { if ( in_array( $post_type, THEME_SETTINGS['use_classic_editor'], true ) ) { return false; } return true; } /** * Register Gutenberg blocks */ function register_block_editor_assets() { $dependencies = array( 'wp-blocks', // Provides useful functions and components for extending the editor 'wp-i18n', // Provides localization functions 'wp-element', // Provides React.Component 'wp-components', // Provides many prebuilt components and controls ); wp_register_script( 'block-editor', get_theme_file_uri( 'js/src/block.js', __FILE__ ), $dependencies, null ); // phpcs:ignore wp_register_style( 'block-editor', get_theme_file_uri( 'css/gutenberg.min.css', __FILE__ ), null, null ); // phpcs:ignore } add_action( 'admin_init', __NAMESPACE__ . '\register_block_editor_assets' );