From 28b6093061078d6c15fb3223c6dda764ac238234 Mon Sep 17 00:00:00 2001
From: jorgefilipecosta <jorgefilipecosta@git.wordpress.org>
Date: Thu, 10 Mar 2022 23:27:04 +0000
Subject: [PATCH] Block Editor: Improve Global Styles filtering order.

From the conceptual point it makes sense to execute global styles filters before post filters. So the post filters are always the last.

Props xknown, sergey, audrasjb, vortfu, oandregal, get_dave.
Built from https://develop.svn.wordpress.org/trunk@52895


git-svn-id: http://core.svn.wordpress.org/trunk@52484 1a063a9b-81f0-0310-95a4-ce76da25c4cd
---
 wp-includes/kses.php    | 12 ++++++++----
 wp-includes/version.php |  2 +-
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/wp-includes/kses.php b/wp-includes/kses.php
index 2a197e200b..e9a50aac5d 100644
--- a/wp-includes/kses.php
+++ b/wp-includes/kses.php
@@ -2201,12 +2201,14 @@ function kses_init_filters() {
 		add_filter( 'pre_comment_content', 'wp_filter_kses' );
 	}
 
+	// Global Styles filtering: Global Styles filters should be executed before normal post_kses HTML filters.
+	add_filter( 'content_save_pre', 'wp_filter_global_styles_post', 9 );
+	add_filter( 'content_filtered_save_pre', 'wp_filter_global_styles_post', 9 );
+
 	// Post filtering.
 	add_filter( 'content_save_pre', 'wp_filter_post_kses' );
-	add_filter( 'content_save_pre', 'wp_filter_global_styles_post' );
 	add_filter( 'excerpt_save_pre', 'wp_filter_post_kses' );
 	add_filter( 'content_filtered_save_pre', 'wp_filter_post_kses' );
-	add_filter( 'content_filtered_save_pre', 'wp_filter_global_styles_post' );
 }
 
 /**
@@ -2229,12 +2231,14 @@ function kses_remove_filters() {
 	remove_filter( 'pre_comment_content', 'wp_filter_post_kses' );
 	remove_filter( 'pre_comment_content', 'wp_filter_kses' );
 
+	// Global Styles filtering.
+	remove_filter( 'content_save_pre', 'wp_filter_global_styles_post', 9 );
+	remove_filter( 'content_filtered_save_pre', 'wp_filter_global_styles_post', 9 );
+
 	// Post filtering.
 	remove_filter( 'content_save_pre', 'wp_filter_post_kses' );
-	remove_filter( 'content_save_pre', 'wp_filter_global_styles_post' );
 	remove_filter( 'excerpt_save_pre', 'wp_filter_post_kses' );
 	remove_filter( 'content_filtered_save_pre', 'wp_filter_post_kses' );
-	remove_filter( 'content_filtered_save_pre', 'wp_filter_global_styles_post' );
 }
 
 /**
diff --git a/wp-includes/version.php b/wp-includes/version.php
index 55fb5cd789..de2a74db0d 100644
--- a/wp-includes/version.php
+++ b/wp-includes/version.php
@@ -16,7 +16,7 @@
  *
  * @global string $wp_version
  */
-$wp_version = '6.0-alpha-52846';
+$wp_version = '6.0-alpha-52895';
 
 /**
  * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.