Documentation

Publish to WordPress

Connect WordPress with an Application Password and publish articles as drafts or live posts — no plugin required.

Publish to WordPress

Connect PrismSEO to WordPress and publish generated articles straight into your site as drafts or live posts — no plugin required. PrismSEO uses the built-in WordPress REST API with an Application Password, so nothing touches your real login password.

Best for marketing teams and agencies already running SEO on WordPress who want articles to land in the normal editorial queue.

Prerequisites

  • WordPress 5.6 or newer (Application Passwords ship in core since 5.6).
  • Your site is reachable over HTTPS (Application Passwords are disabled on plain HTTP).
  • The REST API is enabledhttps://yoursite.com/wp-json/wp/v2/users/me should return JSON, not a 404 or a security-plugin block.
  • The WordPress user you connect can create and publish posts (Author, Editor, or Administrator).
If a security plugin (Wordfence, iThemes, "Disable REST API", etc.) blocks the REST API or Application Passwords, allowlist /wp-json/ and re-enable Application Passwords before connecting.

Step 1 — Create an Application Password in WordPress

  • In WordPress admin, open Users → Profile (your own user).
  • Scroll to Application Passwords.
  • Enter a name you'll recognize — for example PrismSEO — and click Add New Application Password.
  • Copy the generated password immediately. WordPress shows it only once. It looks like abcd EFGH ijkl MNOP qrst UVWX (spaces are fine — keep or remove them, both work).

This password grants API access only and can be revoked anytime from the same screen without changing your login.

Step 2 — Connect WordPress in PrismSEO

  • Open Dashboard → Integrations → WordPress.
  • Enter:

- Site URL — your site root, e.g. https://example.com (no trailing /wp-admin).

- Username — your WordPress username (not your email, unless that's your login).

- Application Password — the value from Step 1.

  • Click Connect WordPress.

PrismSEO validates the credentials by calling GET /wp-json/wp/v2/users/me before saving. If it can read your user, the connection is stored (the password is encrypted at rest).

Step 3 — Publish an article

  • Open or generate an article in Content.
  • Click Publish → WordPress.
  • Pick a mode:

- Draft — creates a WordPress draft for editorial review.

- Publish — publishes the post live immediately.

  • Confirm. PrismSEO sends the title, HTML body, excerpt, and slug to POST /wp-json/wp/v2/posts.

The new post appears under Posts in WordPress with your content, meta description as the excerpt, and the slug PrismSEO generated.

What PrismSEO sends

PrismSEO maps article fields to the standard WordPress REST post object:

  • title — the article title.
  • content — the full article HTML (headings, images, tables, FAQ).
  • excerpt — the meta description.
  • slug — the URL slug (WordPress will de-duplicate if it already exists).
  • statusdraft or publish, based on the mode you chose.

Verify your credentials with curl

WordPress Application Passwords use HTTP Basic auth (username:app_password). You can confirm access before connecting:

# Check the connected user resolves (should return your user JSON)
curl https://example.com/wp-json/wp/v2/users/me \
  --user "your_username:abcd EFGH ijkl MNOP qrst UVWX"

# Create a draft post to confirm write access
curl -X POST https://example.com/wp-json/wp/v2/posts \
  --user "your_username:abcd EFGH ijkl MNOP qrst UVWX" \
  -H "Content-Type: application/json" \
  -d '{"title":"PrismSEO test","content":"<p>Hello</p>","status":"draft"}'

A 200/201 response means PrismSEO will connect and publish successfully.

Publish history and troubleshooting

Every attempt is recorded in Publish History with its status and error message. Common issues:

  • 401 Unauthorized — wrong username or Application Password, or Application Passwords are disabled (often because the site isn't on HTTPS). Regenerate the password and reconnect.
  • 403 rest_forbidden / rest_cannot_create — the user lacks post-creation capability. Use an Author/Editor/Admin account.
  • 404 on /wp-json/... — the REST API is disabled or blocked by a security plugin. Re-enable it and allowlist /wp-json/.
  • Timeout / unreachable — the host is blocking outbound API requests or is behind a firewall. Confirm the wp-json URL loads in a browser.
  • Disconnected connection — reconnect from Integrations before publishing again.

For deeper fixes, see WordPress Publishing Troubleshooting.

Next step

Apply this setup, then run your first publish cycle from your dashboard.