Connect WordPress to Fondoo
This guide is for self-hosted WordPress: WordPress.org software running on your own host or managed hosting. For a site hosted on WordPress.com, see the WordPress.com guide. Connecting lets your AI agent draft, update, schedule and publish posts and pages, upload images, and fix SEO problems on the site you already have, with your approval where it matters.
What Fondoo can do with it
With an application password, Fondoo uses the standard WordPress REST API (/wp-json/wp/v2) to:
- Posts, pages, media, categories, tags and comments: list, read, create and update. Media uploads accept JPEG, PNG, WebP or PDF, up to about 3 MB.
- Menus and menu items: list, read, create and update. These need WordPress 5.9 or later and a user who can edit theme options.
- Authors and revisions: list authors, and list the revisions of a post or page.
- Delete any of the items above. This is a destructive action and needs your approval. Posts and pages go to the Trash, not straight to permanent deletion.
With the optional Fondoo WordPress plugin and its key (pluginKey), Fondoo can also:
- Read and write SEO fields per post: title, description, canonical, robots and Open Graph. These are also written into Yoast or Rank Math when present.
- Manage redirects.
- Manage JSON-LD schema.
- Submit URLs to IndexNow.
- Turn on Fondoo analytics, optionally with a validated Google Tag Manager ID.
- Read a basic health report.
After you bind the connection to your Fondoo site with connect_cms, Fondoo's shared page tools work on WordPress:
update_pagesaves drafts.publish_connected_pagepublishes, or schedules a future post.map_cms_pagelinks an existing post.apply_seo_fixescorrects missing titles, descriptions and canonicals.
Approval rules:
- Publishing goes through Fondoo's quality and publication gates. An agent needs your approval to publish unless you have turned on auto-publish.
- Deleting content needs your approval.
- Re-pointing an already bound site to a different CMS connection needs your approval.
Before you start
- WordPress 5.6 or newer, served over HTTPS. Application passwords are only available over HTTPS, or on a site marked as a local environment (integration guide).
- A dedicated WordPress user for Fondoo, with the lowest role that covers what you want:
- Editor covers posts, pages, media, categories and comments.
- Administrator is needed for menus, which require
edit_theme_options(roles). - Author cannot edit pages.
- No conflicting plugin. Some security plugins and hosts switch application passwords off. Sites that already use HTTP Basic Authentication are "not currently compatible" with them.
- Optional plugin requirements: PHP 8.1 or newer, plus a Fondoo API key to act as
pluginKey. The plugin is version 0.1.0 and is not in the WordPress.org plugin directory. You install it from the Fondoo source (apps/wordpress-plugin). - There is no WordPress cost. Your host's normal limits apply.
Step by step: get your credentials
- Sign in to WordPress as the Fondoo user, or as an administrator editing that user.
- Go to Users → Profile (or Users → All Users → Edit) and scroll to Application Passwords.
- In New Application Password Name, type
Fondoo. Click Add Application Password. - Copy the password. WordPress says "You will not be able to retrieve it." The spaces in it are optional.If the section says "The application password feature requires HTTPS", fix HTTPS first.
- Note your site URL exactly as visitors see it after any redirects, for example
https://www.example.comrather thanhttps://example.comif the bare domain redirects. Fondoo does not follow redirects. It also rejects URLs with ports,localhostor IP addresses. - Note the username of that user (the login name, not the display name).
- Optional plugin:
- Copy
apps/wordpress-plugintowp-content/plugins/fondooand activate it. - Ask your agent to create a dedicated Fondoo API key with
create_api_key. Agents need your approval for this. Give the key only thecontacts:writescope if you want form forwarding. - In
wp-config.php, setFONDOO_SITE_KEYto that key andFONDOO_API_ORIGINtohttps://api.getfondoo.com. - Use the same key as
pluginKey.
- Copy
Connect it in Fondoo
In the dashboard:
- Open Connections. Under Available → Content, find WordPress and click Use a key, then Open secure key entry.
- Fill in
siteUrl,username,applicationPasswordand, if you installed the plugin,pluginKey. - Click Save connection securely. The link lasts 15 minutes and can be used once.
- Click Check connection on the WordPress card.
By asking your agent. For example:
"Connect my WordPress blog at https://www.example.com and use it for my Fondoo site."
The agent calls add_connection_key({provider:"wordpress", siteId}) without fields and sends you the secure link. Never paste the password into chat: credentials sent in fields carry a chat-log warning. A signed 15-minute instruction link is also available via connect_service({provider:"wordpress", siteId}). After saving, the agent runs:
test_connection({connectionId})
connect_cms({siteId, connectionId})REST: POST https://api.getfondoo.com/v1/ops/add_connection_key with Authorization: Bearer <your Fondoo key> and {"provider":"wordpress","siteId":"<site UUID>"}. The other operations are the same pattern, for example POST /v1/ops/connect_cms.
When you cross-post content that first appeared elsewhere, set the original URL as canonicalUrl so the copy points back to the source.
Test that it works
test_connectionreads/wp-json/wp/v2/users/me?context=edit. When it succeeds, the connection lists the capabilities WordPress reports for that user under confirmed, such asedit_posts.- Plugin and SEO actions stay unknown until first used.
- Ask your agent to list your five latest posts, then to create a draft. Check Posts → Drafts in WordPress.
Troubleshooting
- Status
invalidor "Provider request failed (401)". The username or application password is wrong, or application passwords are disabled. Openhttps://your-site/wp-json/: ifauthenticationis empty there, a plugin or host has turned the feature off. - "Use a public HTTPS site URL" or "Connector request failed".
siteUrlmust be the final HTTPS address, with no redirect, port or path tricks. Use the exact URL your browser ends up on. - "Provider request failed (403)" on menus or pages. The user's role is too low. Menus need Administrator.
- "Install the Fondoo plugin and configure pluginKey…". SEO and plugin actions were requested without the plugin. Install it, or edit SEO fields your SEO plugin exposes in the REST API.
- SEO changes do not show. A page cache or theme may override them. Clear caches and run a Fondoo SEO audit again.
- "Provider request failed (429)" or "Connector rate budget exhausted". Your host is rate limiting, or you exceeded Fondoo's budget of about 60 actions per minute for this connection.
Limits, data and security
- What Fondoo stores: encrypted credentials, connection status, last test, last use, and snapshots of pages it publishes or fixes (used for undo).
list_connectionsshows every field as[redacted]. - Rotate: add a new application password, call
rotate_connection_key({connectionId})without fields, paste the new one, then revoke the old one. Revoking the application password and rotating the plugin key are separate steps. - Disconnect:
delete_connection({connectionId})removes the stored credentials. Agents need your approval. Then click Revoke next to "Fondoo" under Application Passwords in WordPress.
Official links
- Application passwords integration guide: https://make.wordpress.org/core/2020/11/05/application-passwords-integration-guide/
- REST API authentication: https://developer.wordpress.org/rest-api/using-the-rest-api/authentication/
- REST API reference: https://developer.wordpress.org/rest-api/reference/
- Menus endpoints (WordPress 5.9): https://make.wordpress.org/core/2022/01/24/menus-endpoints-in-wordpress-5-9/
- Roles and capabilities: https://wordpress.org/documentation/article/roles-and-capabilities/
