This post originally appeared on make.wordpress/core.
Since I last wrote two weeks ago, we’re making progress! Key achievements for Gutenberg and the REST API include:
- Support for
who=authors
was added toGET wp/v2/users
, making it possible to accurately query for authors. WordPress, for better or for worse, defines an author asuser_level!=0
. SeeĀ WordPress/gutenberg#6361 for the context on why we can’t add this logic client-side (#42202 for WordPress 4.9.6). - Improved performance for the
_fields=
query parameter (e.g.GET wp/v2/pages?_fields=id,title
) by ensuring WordPress core will only process the fields requested for the response. Notably, this helps us avoid runningthe_content
when we don’t need to be (#43874 for WordPress 4.9.7). - Minor enhancements to reflect existing WordPress behaviors:
- Disables the Preview button when post type isn’t viewable (WordPress/gutenberg#6232 for Gutenberg 2.7)
- Filters the Post Format list to only formats that are supported (WordPress/gutenberg#6296 for Gutenberg 2.8)
- Only displays Featured Image UI when theme supports it too (WordPress/gutenberg#6541 for Gutenberg 2.8)
The “Merge Proposal: REST API” GitHub milestone represents the distance we still need to close. Slowly, steadily, we’re bridging the gap, but we could use your help. Here are some of the issues we’re still working through:
- To ensure all necessary data is available to Gutenberg, we’ve settled upon permitting unbounded
per_page=-1
REST API requests for authorized users. This landed forGET wp/v2/users
(WordPress/gutenberg#6627), is in-progress forGET wp/v2/(pages|blocks)
(WordPress/gutenberg#6657), and needs to be addressed for categories, tags, and custom taxonomies. We also need to patch core with this enhancement (#43998 for WordPress 4.9.7?) - Capabilities can’t be processed directly client-side (WordPress/gutenberg#6361), so we’ve introduced a new
targetSchema
concept to communicate which actions a user can perform. See it in action withwp:action-sticky
(WordPress/gutenberg#6529) andwp:action-assign-author
(WordPress/gutenberg#6630). There are a few other actions we will need to work out, and then we’ll need to patch core (no ticket yet). - Adam is putting together an improved autosaves implementation (WordPress/gutenberg#6257) that I literally cannot wait to see complete. I’m sure he could use some help testing in the near future.
- Felix is implementing a
WP_REST_Search_Controller
endpoint (WordPress/gutenberg#6489) to power the link search UI.
Join us tomorrow, Thursday, May 10 at 17:00 UTC in #core-restapi
office hours if you’d like to chat through any questions you have.