Connect your blog
Tell Publish where your posts go: Ghost, WordPress, Payload, GitHub, or your own API.
Connect the blog you already run. Publish then sends finished articles there, as live posts or as drafts. About 5 minutes.
Before you start
You need admin access to your blog, to create a key or a token for FounderHQ.
Start the connection
Open Publish → Settings. Under Blog Connections, press Connect blog and choose your CMS type.
Enter the details for your CMS
Give the connection a Connection name in every case.
Ghost
| Field | What to enter |
|---|---|
| Ghost Admin URL | The address of your Ghost admin |
| Ghost Admin API key | In Ghost Admin, open Integrations and add a custom integration. Copy its Admin API key. It has the form id:secret. |
WordPress
| Field | What to enter |
|---|---|
| WordPress URL | The address of your site |
| Username + application password | Your username, a colon, and an application password from your WordPress profile: username:xxxx xxxx xxxx xxxx |
Payload
| Field | What to enter |
|---|---|
| Payload API URL | The address of your Payload API |
| Payload API token | An API key for a Payload user |
Publish then reads your collections and asks you to match them under Payload content mapping: the posts collection, the author collection, and the fields for title, slug, content, excerpt, status, and featured image.
Built your blog with FounderHQ's Next.js package? Use the endpoint
https://your-domain.com/payload-api, with cms-users as the auth
collection and blog-posts as the posts collection.
GitHub
Publish commits each article to your repository as a Markdown or MDX file.
- Under Authentication, choose GitHub App and press Connect GitHub, then pick the Repository. Or choose Manual token and paste a fine-grained token with Contents: Read and write.
- Set the Branch.
- Choose the Output format: Markdown (
.md) or MDX (.mdx). - Set the File path template. It starts as
content/blog/{{ slug }}.md.
The path template accepts {{ slug }}, {{ yyyy }}, {{ mm }},
{{ dd }}, and {{ article.title }}.
Custom API
Publish calls an endpoint you own. You build the request in the wizard.
It starts as a POST with a bearer token and this body:
{
"title": "{{ article.title }}",
"slug": "{{ article.slug }}",
"html": "{{ article.html }}",
"markdown": "{{ article.markdown }}",
"excerpt": "{{ article.excerpt }}"
}The request must use article.title and one of article.html or
article.markdown. You can also use article.slug, article.excerpt,
article.tldr, article.faq, article.keyTakeaways,
article.schemaOrg, and article.dateModified.
Then tell Publish where to read your reply: the post's ID, its address,
its status, and an error message. They start as id, url, status, and
error.message.
Test the connection
Press the test button on the step. Publish checks that it can reach your blog with what you entered.
Match your authors
For Ghost, WordPress, and Payload, Publish lists the authors in your CMS. Match each one to a FounderHQ author, so a post goes out under the right name.
Add the blog address and save
Enter the Blog address: where readers find your blog, such as
www.example.com/blog. Leave Make this the primary publishing target
on for your main blog, then press Save target.
Auto-publish sends to the primary target.
Verify
The connection appears under Blog Connections with the status Active and the badge Primary. Press Validate on it at any time to check it again.
Manage a connection
| On the connection | What it does |
|---|---|
| Map authors | Change which CMS author each FounderHQ author publishes as |
| IndexNow | Tell search engines about new posts. See Get indexed. |
| Validate | Check the connection now |
| Edit details | Change the address or the credentials |
| Make primary | Send auto-published posts here |
| Archive | Stop using it. Published posts stay on your blog. |
Needs attention means the last check failed. Open Edit details, correct the credentials, and validate again.