- Docs
- Training Your Bot
- Training from WordPress Content
Training from WordPress Content
Point HelpJet at your WordPress site, pick which post types to import, and — for private sites — authenticate with an Application Password or JWT token.
On this page
- Adding a WordPress site
- Choosing post types
- Authenticating for private sites
- Setting up an Application Password
- How credentials are stored
- Refreshing WordPress content
- Common questions
- Does this install anything on my WordPress site?
- My custom post type isn't listed — why?
- Can I train on WooCommerce products or other plugin content?
- The import worked but some posts are missing.
- Where to go next
If your help content lives in WordPress, this is the easiest bulk-training path: enter your site's URL, tick the content types you want, and HelpJet imports the posts through the WordPress REST API — no plugin, no export, no code.
Adding a WordPress site
- Open your bot's Sources tab.
- In the Training URL input, enter your site's homepage URL -
yoursite.comis enough. Subdomains (help.yoursite.com) and subdirectory installs (yoursite.com/blog) work too. - Click Add.
HelpJet probes the site's REST API. If it responds, the site is added as a WordPress source card — no need to tell HelpJet it's WordPress, detection is automatic.
Choosing post types
The WordPress card shows your site's hostname and a Post types to fetch section listing every public content type the site exposes — Posts and Pages first, then custom types (docs, FAQs, products, and so on) alphabetically, with their descriptions where WordPress provides them.
- Tick the types you want the bot to learn from.
- Click Fetch posts. HelpJet pulls in the matching content and shows a review checklist.
- Untick anything that shouldn't train the bot — old announcements, internal notes. A search box helps with long lists.
- Click Start training.
Each imported post becomes its own child source under the WordPress parent, so you can see, refresh, or delete individual posts later.
If the card shows No Content Types Found, the URL isn't a WordPress site, the REST API is disabled, or a security plugin is blocking it — the card lists what to check.
Authenticating for private sites
Public sites train without any credentials. If your content is private or behind a login, expand WordPress authentication (optional) below the Training URL input before you add the site. As the panel notes: it's only needed when your WordPress content is private or behind a login.
Choose an Auth Method:
Method | When to use it | What you enter |
|---|---|---|
None (public) | The default — your content is publicly readable | Nothing |
Application Password | Most private sites (WordPress 5.6+) | WordPress Username and Application Password |
JWT Token | Sites using a JWT authentication plugin | JWT Token |
Setting up an Application Password
Application Passwords are built into WordPress — no plugin required:
- In your WordPress admin, go to Users → Profile (for a user who can read the content you're importing).
- Scroll to Application Passwords, enter a name like "HelpJet", and click Add New Application Password.
- Copy the generated password (it looks like
xxxx xxxx xxxx xxxx xxxx xxxx) — WordPress only shows it once. - In HelpJet, choose Application Password, enter the WordPress username and the generated password, then add the site as usual.
How credentials are stored
Credentials are encrypted with AES-256-GCM before they're stored (see Security & Privacy), and they're used for exactly one thing: authenticating HelpJet's requests to your site's WordPress REST API when importing and refreshing content. To revoke access at any time, delete the Application Password in WordPress or delete the source in HelpJet.
Refreshing WordPress content
WordPress sources stay current in three ways:
- Automatic refresh — like all web sources, imported posts older than 30 days are re-fetched automatically. Re-discovery adds posts published since the last import, refreshes changed posts in place, and flags posts that have disappeared as potentially removed (they're never deleted automatically).
- Manual refresh — click Refresh on the WordPress parent in the source list to re-discover and re-fetch now, or refresh an individual post's row.
- Re-adding the site — entering the same site URL again isn't treated as a duplicate. It reopens the post-type selection, which is how you import an additional post type (say, docs after posts) from a site you've already trained on.
Common questions
Does this install anything on my WordPress site?
No. Training reads your content through the REST API that WordPress exposes by default. Nothing is installed, and nothing on your site changes.
My custom post type isn't listed — why?
Only post types exposed through the REST API appear. If a plugin registers its type without REST support (show_in_rest), WordPress doesn't make it available for HelpJet to discover.
Can I train on WooCommerce products or other plugin content?
Yes, if the plugin exposes its content as a REST-enabled post type — it'll show up in Post types to fetch alongside Posts and Pages.
The import worked but some posts are missing.
Check whether discovery hit the 500-posts-per-type cap (the source is flagged when it does), and whether the missing posts are in a post type you didn't select. Private posts also need authentication with a user who can read them.
Where to go next
- Training Sources Overview — statuses, priorities, and managing what you've imported.
- The HelpJet WordPress Plugin — put the chat widget on your WordPress site.
- Train & Test Mode — check what the bot learned before deploying.
Was this article helpful?