diff --git a/package.json b/package.json index 4bf4d7bdad2562..b7453df874d119 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,7 @@ "scriptGlobal": "wp", "packageNamespace": "wordpress", "handlePrefix": "wp", + "scriptRegistrationPriority": 10, "pages": [ { "id": "site-editor-v2", diff --git a/packages/wp-build/lib/php-generator.mjs b/packages/wp-build/lib/php-generator.mjs index 0a781cdffa9259..83571b33ba0bf6 100644 --- a/packages/wp-build/lib/php-generator.mjs +++ b/packages/wp-build/lib/php-generator.mjs @@ -30,11 +30,15 @@ export async function getPhpReplacements( rootDir, baseUrlExpression ) { // @ts-expect-error specific override to package.json const name = rootPackageJson.wpPlugin?.name || 'gutenberg'; const version = rootPackageJson.version; + const scriptPriority = + // @ts-expect-error specific override to package.json + rootPackageJson.wpPlugin?.scriptRegistrationPriority ?? 9; return { '{{PREFIX}}': name, '{{VERSION}}': version, '{{BASE_URL}}': baseUrlExpression, + '{{SCRIPT_PRIORITY}}': String( scriptPriority ), }; } diff --git a/packages/wp-build/templates/script-registration.php.template b/packages/wp-build/templates/script-registration.php.template index 401bfb5d1eea46..93e0c231e37de2 100644 --- a/packages/wp-build/templates/script-registration.php.template +++ b/packages/wp-build/templates/script-registration.php.template @@ -85,5 +85,5 @@ if ( ! function_exists( '{{PREFIX}}_register_package_scripts' ) ) { } } - add_action( 'wp_default_scripts', '{{PREFIX}}_register_package_scripts' ); + add_action( 'wp_default_scripts', '{{PREFIX}}_register_package_scripts', {{SCRIPT_PRIORITY}} ); }