Ghost.blog connects directly to your WordPress site so it can publish AI-generated articles for you on a schedule you control. You set up your brand once; Ghost.blog handles the rest: drafting, illustrating, and posting through the WordPress REST API.
This guide walks you through everything: how to connect, how to configure what gets published, how to feed the AI inspiration via RSS, and what actually happens when a post goes live on your site.
What the integration does
Once connected, Ghost.blog can:
✅ Publish AI-generated articles straight into your WordPress site as either drafts or live posts.
✅ Run on a schedule - define how many posts per day, at what times, and in what timezone.
✅ Pull inspiration from RSS feeds - point the AI at sources your audience already reads, and it uses them as context when drafting.
✅ Match your brand voice - every post inherits your brand profile (tone, audience, voice, color palette for illustrations).
✅ Fine-tune output - word-count range, readability target, FAQ blocks, tables, charts, inline images, and internal/external linking, all configurable per site.
✅ Support multiple WordPress sites under a single team, each with its own settings.
Before you start
You'll need:
• A self-hosted WordPress site or any WordPress install with the REST API exposed at /wp-json/wp/v2.
• A WordPress user with permission to publish posts (Editor or Administrator).
• A WordPress Application Password - Ghost.blog never asks for your real WordPress login password. Application Passwords are scoped, revocable credentials WordPress generates specifically for API access.
Step 1 - Generate a WordPress Application Password
1. Go to your wordpress site
2. Log into WordPress, its usually at the url /wp-admin
Eg: https://mywebsite.com/wp-admin

3. Go to Users → Profile
If you are an admin, go to Users → All Users → your user.

4. Scroll to the Application Passwords section.

5. In the New Application Password Name field, type something like "Ghost Blog".

6. Click Add New Application Password.

7. WordPress shows you a 24-character password. Copy it now — WordPress only displays it once.

If you don't see the Application Passwords section, your host or a security plugin may have disabled the WordPress REST API. Re-enable it before continuing.
Step 2 - Connect WordPress in Ghost.blog
1. In Ghost.blog, open your Brand Profile → Integrations tab.

2. Click +Add Wordpress Site.

3. Fill in: Website URL, Site title, optional description, WordPress username (email assosciated with the wordpress user), and the application password from Step 1.7

4. Click Connect Site. Ghost.blog pings /wp-json/wp/v2/posts to verify your credentials.

5. Once it returns green, save the integration.

If it returns red, saying Offline, means it has not integrated successfully

You can connect multiple WordPress sites to the same team. Each site has its own integration record, its own AI configuration, and its own RSS sources.
Step 3 - Configure how Ghost.blog writes for you
Open the Schedule tab to view the content calednar and control everything the AI does for that site.
Setup
1. Click on Article Generation
2. Schedule an Article
- Choose the right wordpress site
- Ensure the currect generation status: Auto Publish, Set to Draft or Generate Topics only
- Set a start Date and End Date
- Ensure the correct timezone
- Ensure you have enough credits to run the automation
3. Press Create Schedule and you will see a list of articles to be generated
4. Click on any article to be
Content shape
• Word-count range — minimum and maximum (300–5000 words).
• Target Flesch reading-ease score — 0–100; higher = simpler prose.
• Language — 27 supported languages (English, Spanish, French, German, Japanese, Chinese, and more).
• Default keywords — SEO seed keywords applied to every post on this site.
Article enrichment
• Statistics — facts and numbers cited inline.
• FAQ block — generates a Q&A section appropriate for the topic.
• Tables — comparison or summary tables when useful.
• Charts — embedded charts for data-heavy posts.
• Inline images — generate up to 8 illustrations placed alongside relevant sections.
• Auto internal links — link to your existing posts where contextually relevant.
• External sources — cite up to 20 outbound references.
Each setting saves independently as a configuration row tied to that WordPress integration.
Step 4 - Add RSS sources for inspiration
RSS sources are how you teach the AI what's current in your niche without it making things up.
1. Inside the integration, open RSS Sources.
2. Click Add Feed and paste a feed URL.
3. Give the feed a name and optionally tag it with a category.
4. Toggle Active to start ingesting articles.
Ghost.blog periodically fetches each feed, stores fresh articles, and passes them as context when generating new posts. The AI uses them for inspiration and reference — it does not republish RSS items.
Step 5 - Let it run
With the integration connected, settings configured, and RSS feeds active, Ghost.blog runs in the background:
1. At each scheduled posting time, a generation job kicks off.
2. The AI drafts a post using your brand profile, your RSS context, and your generation settings.
3. If you opted in, a featured image is generated, uploaded to your WordPress media library, and attached.
4. The post is sent to /wp-json/wp/v2/posts with title, HTML body, excerpt, status (publish or draft), featured media ID, and SEO metadata.
5. WordPress responds with the post URL — you'll see it in the Ghost.blog content dashboard.
Connecting multiple sites
A single team can connect any number of WordPress sites. Each integration has its own credentials, its own generation settings, its own RSS sources, and its own brand profile association — useful if you run several brands from one Ghost.blog account. To switch which brand a WordPress site belongs to, edit the integration and pick a different brand profile from the dropdown.
Disconnecting
When you remove a WordPress integration, Ghost.blog deletes its generation settings, its RSS sources, and any pending generation jobs queued for it. Already-published posts on your WordPress site are untouched.
Troubleshooting
"Failed to authenticate"
The application password is wrong, expired, or for a different user. Generate a fresh one and try again.
"REST API endpoint not reachable"
A security plugin (Wordfence, iThemes, etc.) or your host may be blocking the WordPress REST API. Whitelist /wp-json/ or temporarily disable plugins to confirm.
Posts publishing but missing the featured image
Your WordPress user needs the upload_files capability. Editors and Admins have it by default.
Auto-publish isn't firing
Check that the integration is Active and that Auto-publish is on. With auto-publish off, posts always land as drafts.
FAQ
Do I need to be on a paid WordPress plan?
No. Any WordPress site with the REST API enabled works — self-hosted or managed. WordPress.com restricts the REST API on the free plan; the Business plan and above allow application passwords.
Will Ghost.blog overwrite or modify my existing posts?
No. Ghost.blog only creates new posts. It does not read, edit, or delete posts you authored.
Can my team review posts before they go live?
Yes. Turn off Auto-publish in your generation settings. Every post will land as a draft in WordPress until someone clicks Publish.
How are my credentials stored?
Application passwords are stored against your team's record in the Ghost.blog database and used only when calling the WordPress REST API. You can revoke them at any time from your WordPress profile, which immediately invalidates the connection on Ghost.blog.
Can I use Ghost.blog without a WordPress site?
Yes - you can generate content in Ghost.blog and copy it manually. But scheduled auto-publish requires a WordPress integration.
Ready to connect your first site? Open your Brand Profile in Ghost.blog and add an integration.

