From acec06b08ac990aaab81a354bc8181f111ecf356 Mon Sep 17 00:00:00 2001 From: Tim Carr Date: Tue, 24 Feb 2026 14:29:43 +0800 Subject: [PATCH 1/2] Blocks: Include `apiVersion` in `registerBlockType` --- includes/class-convertkit-gutenberg.php | 46 +++++++++++++++++-------- resources/backend/js/gutenberg.js | 1 + 2 files changed, 32 insertions(+), 15 deletions(-) diff --git a/includes/class-convertkit-gutenberg.php b/includes/class-convertkit-gutenberg.php index e7286322d..c6651f6eb 100644 --- a/includes/class-convertkit-gutenberg.php +++ b/includes/class-convertkit-gutenberg.php @@ -149,19 +149,7 @@ public function add_blocks() { } // Determine the block API version to use for registering blocks. - // WordPress supports Version 3 from WordPress 6.3: - // https://developer.wordpress.org/block-editor/reference-guides/block-api/block-api-versions/. - $block_api_version = ( version_compare( get_bloginfo( 'version' ), '6.3', '>=' ) ? 3 : 2 ); - - /** - * Determine the block API version to use for registering blocks. - * - * @since 3.1.4 - * - * @param int $block_api_version Block API version. - * @return int Block API version. - */ - $block_api_version = apply_filters( 'convertkit_gutenberg_block_api_version', $block_api_version ); + $block_api_version = $this->get_block_api_version(); // Get registered blocks. $registered_blocks = array_keys( WP_Block_Type_Registry::get_instance()->get_all_registered() ); @@ -199,6 +187,33 @@ public function add_blocks() { } + /** + * Determines the block API version to use for registering blocks. + * + * @since 3.3.0 + * + * @return int Block API version. + */ + public function get_block_api_version() { + + // Determine the block API version to use for registering blocks. + // WordPress supports Version 3 from WordPress 6.3: + // https://developer.wordpress.org/block-editor/reference-guides/block-api/block-api-versions/. + $block_api_version = ( version_compare( get_bloginfo( 'version' ), '6.3', '>=' ) ? 3 : 2 ); + + /** + * Determine the block API version to use for registering blocks. + * + * @since 3.1.4 + * + * @param int $block_api_version Block API version. + * @return int Block API version. + */ + $block_api_version = apply_filters( 'convertkit_gutenberg_block_api_version', $block_api_version ); + + return absint( $block_api_version ); + + } /** * Enqueues scripts for Gutenberg blocks in the editor view. * @@ -229,8 +244,9 @@ public function enqueue_scripts() { 'convertkit-gutenberg', 'convertkit_gutenberg', array( - 'ajaxurl' => rest_url( 'kit/v1/blocks' ), - 'get_blocks_nonce' => wp_create_nonce( 'wp_rest' ), + 'ajaxurl' => rest_url( 'kit/v1/blocks' ), + 'block_api_version' => $this->get_block_api_version(), + 'get_blocks_nonce' => wp_create_nonce( 'wp_rest' ), ) ); diff --git a/resources/backend/js/gutenberg.js b/resources/backend/js/gutenberg.js index 258fe1fff..ed36890b8 100644 --- a/resources/backend/js/gutenberg.js +++ b/resources/backend/js/gutenberg.js @@ -885,6 +885,7 @@ function convertKitGutenbergRegisterBlock(block) { // Register Block. registerBlockType('convertkit/' + block.name, { + apiVersion: convertkit_gutenberg.block_api_version, title: block.title, description: block.description, category: block.category, From 5c6a12f1d31577c5dc857a209fa35196495bcebd Mon Sep 17 00:00:00 2001 From: Tim Carr Date: Tue, 24 Feb 2026 14:35:29 +0800 Subject: [PATCH 2/2] Correct version number in docblock --- includes/class-convertkit-gutenberg.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/class-convertkit-gutenberg.php b/includes/class-convertkit-gutenberg.php index c6651f6eb..1c51589cf 100644 --- a/includes/class-convertkit-gutenberg.php +++ b/includes/class-convertkit-gutenberg.php @@ -190,7 +190,7 @@ public function add_blocks() { /** * Determines the block API version to use for registering blocks. * - * @since 3.3.0 + * @since 3.2.0 * * @return int Block API version. */