WordPress/wp-includes/rest-api
desrosj 94a93212ba Widgets: Prevent widgets unintentionally being moved to the inactive sidebar.
This fixes a bug where widgets are unintentionally moved to the `wp_inactive_widgets` sidebar when batch updates occur through the REST API.

When batch requests are processed, only `$_wp_sidebars_widgets` is updated by previous calls to `WP_REST_Widgets_Controller::create_item()`. `$sidebars_widgets` is not aware of the new widget’s intended location, and `retrieve_widgets()` mistakenly flags the widget as inactive.

Calling `wp_get_sidebars_widgets()` before `retrieve_widgets()` ensures both global variables match and is intended as a temporary fix until the root cause of the problem can be fixed.

Props zieladam, htmgarcia, timothyblynjacobs.
Merges [51432] to the 5.8 branch.
Fixes #53657.
Built from https://develop.svn.wordpress.org/branches/5.8@51439


git-svn-id: http://core.svn.wordpress.org/branches/5.8@51050 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-07-15 15:42:58 +00:00
..
endpoints Widgets: Prevent widgets unintentionally being moved to the inactive sidebar. 2021-07-15 15:42:58 +00:00
fields REST API: Update “object” strings to use the appropriate nouns. 2021-05-25 13:12:58 +00:00
search REST API: Corrections and improvements to docblocks for REST API filters. 2021-01-10 22:23:09 +00:00
class-wp-rest-request.php REST API: Return detailed error information from request validation. 2021-02-02 17:28:02 +00:00
class-wp-rest-response.php Docs: Corrections and improvements to inline docs relating to the REST API. 2020-11-16 11:04:12 +00:00
class-wp-rest-server.php Docs: Remove an empty line between @param and @return tags in some newly added REST API methods, per the documentation standards. 2021-07-02 19:04:56 +00:00