.. _auto_wordpress_post_blog:
*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 `` 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
------
.. list-table::
:header-rows: 1
:widths: 20 20 20 20 20 20
* - 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 `
` 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
-------
.. list-table::
:header-rows: 1
:widths: 20 20 20 20
* - 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
.. raw:: html
Auto-generated from platform schema. Worker id: wordpress_post_blog. Schema hash: 97a55b661477. Hand-curated docs in workerexamples/ override this page when present.