PUBLISH WORDPRESS BLOG POST

Publishes a post to a WordPress site via the WP REST API (v2), supporting both Application Password (Basic Auth) and Bearer Token authentication. Uploads inline data-URI images embedded in the HTML body and any additional images dataset to the WordPress media library, rewriting <img> src attributes to the resulting hosted URLs before creating the post.

When to use

Tagged: basic_auth, bearer_token, blog, cms, draft, html, image_rewrite, integrations.

Inputs

Label ID Type Default Required Description
WordPress Site URL wp_site_url text — ✓ Base URL of the WordPress site (e.g. https://example.com); trailing slashes are stripped automatically — required.
WordPress Username wp_username text —   WordPress account username; required when authenticating via Application Password (wp_app_password); leave blank if using a Bearer token.
WordPress Application Password wp_app_password password —   WordPress Application Password for HTTP Basic Auth; provide together with wp_username; leave blank if authenticating with a Bearer token via wp_api_key.
WordPress API Key / Bearer Token wp_api_key password —   Bearer / JWT token issued by a WordPress auth plugin (e.g. JWT Auth); leave blank if authenticating with wp_app_password + wp_username.
Post Title title text — ✓ Plain-text title of the WordPress post — required; mapped to the WP REST API title field.
Post HTML Content html_content textarea — ✓ Full HTML body of the post — required; any inline data:image/*;base64,… src values are automatically uploaded to the media library and their src attributes rewritten to the hosted URL.
Additional Images images dataset —   Optional dataset of supplemental images to append after the main content; each row may contain name, data_uri (base64 data URI), path (server filesystem path), or url (already-hosted URL); images are uploaded to the media library and appended as <img> tags.
Post Status status list draft   WordPress post status on creation; choose from draft (default), publish, pending, private, or future (scheduled); defaults to draft if an unrecognised value is supplied.
Categories categories text —   Comma-separated list of category names or numeric IDs to assign to the post; names that do not yet exist in WordPress are created automatically.
Tags tags text —   Comma-separated list of tag names or numeric IDs to assign to the post; names that do not yet exist in WordPress are created automatically.

Outputs

Label ID Type Description
Post ID post_id integer Integer WordPress post ID assigned by the REST API after successful creation; 0 if the request failed.
Post URL post_url text Canonical permalink URL of the newly created post as returned by the WP REST API link field; empty string on failure.
Published published boolean Boolean flag that is true only when a post was successfully created AND its final status is publish; false for draft, pending, private, or future posts.
Post Status post_status string The actual post status string returned by WordPress after creation (e.g. draft, publish, pending, private, future); reflects the server-side state, not the requested status.
Uploaded Images uploaded_images dataset Dataset of images successfully uploaded to the WordPress media library during this run; each row contains name (filename), media_id (WP attachment ID), and url (hosted source URL).
Status status string Human-readable summary message describing the outcome — includes post ID, final status, and count of images uploaded; contains an error description if post creation failed.

Disciplines

  • platform.integration
  • platform.reporter

Auto-generated from platform schema. Worker id: wordpress_post_blog. Schema hash: 3020ea044f9f. Hand-curated docs in workerexamples/ override this page when present.