mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-04-14 01:24:27 +00:00
Editor: Avoid running certain logic around theme.json parsing unnecessarily for classic themes.
Here's what it does: * Do not load and parse `theme-i18n.json` schema if the theme does not have a `theme.json` file. * Fix the variable caching layer around the theme's `theme.json` parsing so that a parent's theme `theme.json` is cached as well. * Do not run a `WP_Query` for global styles for a user when the theme does not have a `theme.json`. In a basic WordPress setup, this changeset improves `wp_head` execution time for classic themes by 10%, and overall response time for both block themes and classic themes by 4%. This may seem like a small win, but 4% reduced overall response time is actually quite a bit for one change, and it is worth mentioning that this is just one of several other little performance tweaks which are being worked on to improve performance of `theme.json` parsing further. Props flixos90, manuilov, oandregal, peterwilsoncc, spacedmonkey. Fixes #56945. git-svn-id: https://develop.svn.wordpress.org/trunk@54799 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -2939,7 +2939,8 @@ class WP_Theme_JSON {
|
||||
public function set_spacing_sizes() {
|
||||
$spacing_scale = _wp_array_get( $this->theme_json, array( 'settings', 'spacing', 'spacingScale' ), array() );
|
||||
|
||||
if ( ! is_numeric( $spacing_scale['steps'] )
|
||||
if ( ! isset( $spacing_scale['steps'] )
|
||||
|| ! is_numeric( $spacing_scale['steps'] )
|
||||
|| ! isset( $spacing_scale['mediumStep'] )
|
||||
|| ! isset( $spacing_scale['unit'] )
|
||||
|| ! isset( $spacing_scale['operator'] )
|
||||
|
||||
Reference in New Issue
Block a user