-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compute presets from theme.json
: skip those without classes or variables
#53574
Conversation
This pull request has changed or added PHP files. Please confirm whether these changes need to be synced to WordPress Core, and therefore featured in the next release of WordPress. If so, it is recommended to create a new Trac ticket and submit a pull request to the WordPress Core Github repository soon after this pull request is merged. If you're unsure, you can always ask for help in the #core-editor channel in WordPress Slack. Thank you! ❤️ View changed files❔ lib/class-wp-theme-json-gutenberg.php |
@@ -1768,6 +1772,10 @@ protected static function replace_slug_in_string( $input, $slug ) { | |||
protected static function compute_preset_vars( $settings, $origins ) { | |||
$declarations = array(); | |||
foreach ( static::PRESETS_METADATA as $preset_metadata ) { | |||
if ( ! isset( $preset_metadata['css_vars'] ) ) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just for consistency could we use empty and in the other condition?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The change looks good to me 👍
Flaky tests detected in 034f49c. 🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/5854698995
|
Part of #45171
Extracted from #53351
What?
When processing presets to generate its classes or CSS Custom Properties, skip those who don't declare any classes or variables in their metadata.
Why?
To reduce unnecessary computations.
How?
Checking whether the preset has a class before processing it within
compute_preset_classes
and checking whether the preset has a variable before processing it withincompute_preset_vars
.Testing Instructions
Verify tests pass.