Since WordPress 6.7, when all the metaboxes are hidden in the preferences, the POST request to post.php to save meta fields is not fired anymore as it used to (e.g. in 6.6.2).
This creates problems with plugins, e.g. Yoast SEO, that use a sidebar to allow users to change some post metadata.
In general, this is a different behaviour from what used to happen so any mechanism relying on that request being fired could be affected.
Step-by-step reproduction instructions
Have WordPress 6.7.* on your site
Install and activate only one plugin adding metaboxes, e.g. Yoast SEO
In the block editor, Preferences > General > Advanced, disable "Yoast SEO" and close
important: reload the page or edit another post - the metabox needs to be hidden from the beginning
open the Yoast SEO sidebar and change a setting, e.g. the focus keyphrase
save the post
no POST request is fired to post.php, so the changed value is not saved
Up until 6.6.2, a POST request was fired to post.php even with hidden metaboxes, so the new value was saved.
Important to notice: the value change in the hidden field works as expected, only the POST request is not fired anymore.
Notable finding:
if the user visits Preferences > General > Advanced, enables the metabox and then disables it again, then doesn't reload the page, the changed value will be saved instead. The problem happens only if all metaboxes are hidden since the editor page has been loaded and the relevant settings have not been touched.
Description
Since WordPress 6.7, when all the metaboxes are hidden in the preferences, the
POST
request topost.php
to save meta fields is not fired anymore as it used to (e.g. in 6.6.2). This creates problems with plugins, e.g. Yoast SEO, that use a sidebar to allow users to change some post metadata. In general, this is a different behaviour from what used to happen so any mechanism relying on that request being fired could be affected.Step-by-step reproduction instructions
POST
request is fired topost.php
, so the changed value is not savedUp until 6.6.2, a
POST
request was fired topost.php
even with hidden metaboxes, so the new value was saved.Important to notice: the value change in the hidden field works as expected, only the
POST
request is not fired anymore.Notable finding: if the user visits Preferences > General > Advanced, enables the metabox and then disables it again, then doesn't reload the page, the changed value will be saved instead. The problem happens only if all metaboxes are hidden since the editor page has been loaded and the relevant settings have not been touched.
Screenshots, screen recording, code snippet
https://www.loom.com/share/bdf879f26d67454caca89aa7b6c3de0b (created by a Yoast support engineer for this issue)
Environment info
Please confirm that you have searched existing issues in the repo.
Please confirm that you have tested with all plugins deactivated except Gutenberg.
Please confirm which theme type you used for testing.