Skip to content

WordPress

Copy page

Reads a WordPress install over its REST API. Structured, faster and cleaner than crawling the rendered site — and it can reach drafts and private posts that a crawl never sees.

Shape: config-only for public content (credentials are optional and only widen reach). Provider id: wordpress.

wordpress-discover reports the site's canonical URL, its timezone, and every post type WordPress exposes over REST:

Terminal window
divinci connectors wordpress-discover https://example.com
Terminal window
# Public content — posts and pages by default
divinci connectors wordpress https://example.com --vector <vectorId>
# Named post types (use the rest_base from wordpress-discover, not the type name)
divinci connectors wordpress https://example.com \
--vector <vectorId> --post-types posts,pages,protocols
# Daily re-sync, swapping through a draft vector
divinci connectors wordpress https://example.com \
--vector <vectorId> --recurring --swap
FlagWhat it does
--vector <id>Target RAG vector
--post-types <list>rest_base values to ingest (default posts,pages)
--limit <n>Max items per post type
--modified-after <iso>Only items modified at/after this ISO-8601 instant
--category-slugs <list>Restrict to these category slugs (posts only)
--exclude-slugs <list>Skip these slugs
--recurring, --cadence <minutes>Recurring sync (15-minute floor, default 1440)
--swapSync into a draft vector, swap the live release on success
--username <user>WordPress username, for non-public content
--include-non-publishedAlso ingest drafts and private posts

Drafts and private posts require a WordPress Application Password (WP 5.6+). Pass it via the environment rather than a flag — anything in argv is readable by any process on the machine via ps:

Terminal window
export DIVINCI_WP_APP_PASSWORD='xxxx xxxx xxxx xxxx xxxx xxxx'
divinci connectors wordpress https://example.com \
--vector <vectorId> --username editor --include-non-published

If the site redirects (http→https, www→apex), connect using the resolvedSiteUrl that wordpress-discover reports: an Application Password is withheld across a cross-origin hop, so an authenticated connector only works against the canonical origin.

WordPress is one of the two providers that can be re-run headlessly:

Terminal window
divinci connectors sync <connectionId>
divinci connectors sync-status <connectionId>