Documentation

WordPress Publishing Troubleshooting

Fix auth, permission, and formatting issues when publishing to WordPress from PrismSEO.

WordPress Publishing Troubleshooting

When a WordPress publish fails, PrismSEO records the exact status and error in Publish History. Match that error to the section below. For initial setup, see Publish to WordPress.

401 Unauthorized

The most common failure — WordPress didn't accept the credentials.

  • Re-check the username (your WordPress login name, not necessarily your email) and the Application Password.
  • Regenerate the Application Password (Users → Profile → Application Passwords) and reconnect — a password is shown only once and is easy to mis-copy.
  • Confirm the site is on HTTPS. Application Passwords are disabled on plain HTTP.
  • Verify the credentials directly:
curl https://example.com/wp-json/wp/v2/users/me \
  --user "your_username:your app password"

If this returns your user JSON, PrismSEO will authenticate too.

403 Forbidden (rest_cannot_create)

Authentication worked, but the user can't create posts.

  • Connect a user with the Author, Editor, or Administrator role.
  • Some security plugins strip post-creation capability from the REST API — check their settings.

404 on /wp-json/...

The REST API isn't reachable.

  • Open https://example.com/wp-json/wp/v2/users/me in a browser. A 404 or an HTML error page means the REST API is disabled or blocked.
  • A "Disable REST API" plugin, Wordfence, or iThemes Security can block it. Allowlist /wp-json/ and re-enable Application Passwords.

Publish succeeds but content looks wrong

  • Confirm your theme renders standard HTML (headings, lists, tables, figures). Some minimal themes need .wp-block-style CSS.
  • A security/optimization plugin may be sanitizing or stripping HTML on save — check its content filters.
  • If the slug already existed, WordPress appended -2; set the intended slug on the post.

Timeouts and intermittent failures

  • Check host-level firewall or bot protection blocking PrismSEO's outbound requests.
  • Confirm the REST endpoint isn't rate-limited by a plugin or CDN.
  • Retry in draft mode and inspect the error in Publish History; a 5xx is safe to retry, a 4xx needs a config fix.

Still stuck?

Reconnect the site from Integrations, do a single draft publish, and read the precise message in Publish History — it names the failing step every time.

Next step

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