Connect your CMS

Connect the CMS your blog lives in to a property: where to get each key, the exact access it needs, what LopeBase reads, and how Content publishes there.

Updated 4 min read Open Connections

Connect the CMS a property's blog lives in, and LopeBase lists its posts beside everything else you run, shows which published posts have no description or run under 300 words, and lets Content publish approved articles there with the same key. Each CMS below connects this way. EmDash has its own connector.

Connect a CMS to a property

  1. Open the connection

    From a property's page or Connections, open your CMS under Content.

    Open Connections
  2. Create the key in your CMS

    Follow the steps for your CMS below. The connect dialog shows the same steps, with a link to the right screen.

  3. Paste and connect

    LopeBase reads one post (or runs one small query) with what you pasted. Nothing is saved unless that works, and the message says what to fix if it does not.

Once connected, the posts show under Posts on your sites in Content, and the connection's own page shows its SEO health. LopeBase only reads with the key until you choose that CMS as the property's Content destination. Then it publishes the articles you approve, and never deletes anything.

Connect WordPress

  1. Pick the user

    Use an Author or Editor. LopeBase reads drafts with it, and publishes as that user once you pick WordPress as the Content destination.

  2. Add an application password

    In WordPress, open UsersProfile, scroll to Application Passwords, name it LopeBase, and press Add New Application Password. The section only shows on sites served over https.

  3. Paste it

    Enter the site address, the user's username, and the application password (not the user's login password).

Descriptions come from the excerpt you wrote, or from Yoast SEO when that plugin is installed.

Connect Ghost

  1. Add a custom integration

    In Ghost Admin, open Settings, search for Integrations, and press Add custom integration. Name it LopeBase.

  2. Paste the API URL and key

    Copy the API URL and the Admin API key the integration shows. The key looks like two parts joined by a colon.

An Admin API key can edit posts, so LopeBase only uses it to read until Ghost is the Content destination.

Connect Webflow

  1. Generate a site token

    Open the site's settings, then Apps and integrationsAPI access, and press Generate API token. Give it CMS read and write.

  2. Find the collection ID

    Open your blog collection's settings in the Webflow CMS and copy its collection ID.

  3. Name the fields

    The body field is the slug of the rich text field (post-body unless you changed it). Add the summary field to have descriptions checked, and the blog's address, like https://example.com/blog, so each post links to its page.

Connect a Shopify blog

  1. Make an app in the Dev Dashboard

    In Shopify's Dev Dashboard, create an app, choose the read_content and write_content scopes on its version, release it, and install it on your store. The app and the store need to be in the same organization.

  2. Copy the client ID and secret

    Copy both from the app's settings. LopeBase trades them for a short-lived token whenever it calls Shopify. If you already have an older custom app made in the Shopify admin, paste its Admin API access token instead.

  3. Find the blog ID

    In the Shopify admin, open the blog under Online Store and copy the number at the end of its address. Enter the store as your-store.myshopify.com.

read_content and write_content cover blogs and pages only. LopeBase never sees products, orders, or customers.

Connect Contentful

  1. Create a personal access token

    In Contentful, open SettingsCMA tokens and create a token named LopeBase.

  2. Name the space, type, and fields

    Copy the space ID from General settings. Enter the content type ID of your blog posts (blogPost unless you changed it) and the IDs of its title, slug, and body fields. Add a description field to have descriptions checked.

To publish from LopeBase, the body should be a Long text field, so the Markdown fits. Reading works with Rich Text too.

Connect Sanity

  1. Add a token

    At sanity.io/manage, open the project, then APITokens, and add a token named LopeBase with Editor permissions.

  2. Name the project and type

    Enter the project ID, the dataset (production unless you changed it), and your post's document type and body field. Add a description field to have descriptions checked.

LopeBase lists published documents only. Drafts stay in your Studio.

Publish to the CMS you connected

Open GrowContent, pick the property, and choose CMS as the destination, then the same CMS. Leave the fields blank to use the connection's settings and key, or fill one in to use something different for publishing. Use Test connection before your first article goes out.

If something goes wrong

Something else? Contact us.

WordPress says the password is wrong, but it is right

Paste the application password, not the password you sign in with, and enter the username it belongs to. Some security plugins and hosts turn application passwords off, so check that the Application Passwords section shows on the profile. Some hosts also drop the login on its way to WordPress; your host's help pages call this passing the Authorization header, and it is usually one line in the site's settings or .htaccess.

Shopify refuses the client ID and secret

The app has to be installed on the store, and made in the same organization that owns the store. A store made from the Shopify admin rather than the Dev Dashboard can sit outside your organization; in that case use an older custom app's access token if you have one.

The SEO health shows no count for missing descriptions

That CMS keeps no description LopeBase can check yet. For Webflow, Contentful, and Sanity, add the field that holds each post's description on the connection.

It says the CMS is limiting requests

The key works, the CMS is just busy. LopeBase saves the connection and reads the posts again on its next pass.