Micropub
Micropub is an open API standard that is used to create posts on your site using third-party clients. Web apps and native apps (e.g. iPhone, Android) can use Micropub to post short notes, photos, events or other posts to your own site, similar to a Twitter client posting to Twitter.com. Requires the IndieAuth plugin for authentication.
Once you’ve installed and activated the plugin, try a client such as Quill to create a new post on your site. It walks you through the steps and helps you troubleshoot if you run into any problems. A list of known Micropub clients are available here.
Supports the full Micropub spec.
As this allows the creation of posts without entering the WordPress admin, it is not subject to any Gutenberg compatibility concerns per se. Posts created will not have Gutenberg blocks as they were not created with Gutenberg, but otherwise there should be no issues at this time.
Available in the WordPress plugin directory at wordpress.org/plugins/micropub.
Filters and Hooks
Filters
before_micropub( $input )
Called before handling a Micropub request. Returns $input, possibly modified.
micropub_post_content( $post_content, $input )
Called during the handling of a Micropub request. Returns $post_content, possibly modified.
micropub_post_type( $post_type = 'post', $input )
Called during the creation of a Micropub post. Defaults to post but allows setting a custom post type.
micropub_tax_input( $tax_input, $input )
Called during the creation of a Micropub post. Allows setting custom taxonomy.
micropub_syndicate-to( $synd_urls, $user_id, $input )
Called to generate the list of syndicate-to targets.
micropub_query( $resp, $input )
Allows you to replace a query response with your own customized version.
micropub_suggest_title( $mf2 )
Allows a suggested title to be generated for the post slug.
pre_insert_micropub_post( $args )
Filters the arguments sent to wp_insert_post just prior to insertion.
Hooks
after_micropub( $input, $wp_args = null )
Called after handling a Micropub request. Not called if the request fails.
micropub_syndication( $ID, $syndicate_to )
Called only if there are syndication targets for the post.
