---
title: "Publish to WordPress"
description: "Install the RankControl plugin and paste one key. Articles arrive as native posts on your own site. Takes about three minutes."
---

> Documentation Index
> Fetch the complete documentation index at: https://rctrl.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Publish to WordPress

RankControl publishes each approved article as a native post on your
WordPress site. Posts use your theme, your permalinks, and your categories.
Updates to an article revise the same post. The plugin works with any theme,
with or without an SEO plugin.

You need an administrator login for your WordPress site. On WordPress.com,
plugins install on the Business and Commerce plans. Self-hosted WordPress has
no plan requirement.

## 1. Create the destination in RankControl

Go to **Brand Control → Publishing**, open **Add a destination**, and choose
**WordPress**. Enter a name and your **WordPress site URL**, including
`https://`. Under **Publish as**, choose **Published post** or **Draft for
review**. Click **Create integration**.

RankControl shows your **Integration key** and a download link for the
plugin. Keep this screen open for the next steps.

## 2. Download the plugin

Click **Download the RankControl plugin (ZIP)**. The file is the same for
every site. Your key is what connects it to your workspace.

## 3. Install the plugin

In WP Admin, go to **Plugins → Add New → Upload Plugin**. Choose the ZIP,
click **Install Now**, then click **Activate**.

If the plugin is already installed, upload the ZIP again and choose
**Replace current with uploaded**. Your key and settings stay in place.

## 4. Paste the key

In WP Admin, go to **Settings → RankControl**. Paste the key into
**Integration key** and click **Save key**.

The **Status** row on that page changes to "Connected" within a few seconds.
In RankControl, the destination changes from **Setup pending** to **Active**
at the same moment. If it is your only destination, new articles now publish
here.

Done. Approved articles arrive as native posts on schedule.

## What arrives on your site

- The article as a normal post, in the category that matches its topic. A
  category you set by hand on a post is never replaced.
- The hero image in your media library, set as the featured image.
- The meta title and description, through Yoast SEO, Rank Math, All in One
  SEO, SEOPress, or The SEO Framework. With no SEO plugin, the plugin renders
  them itself.
- The article's structured data (JSON-LD) in the page head.

With **Draft for review**, posts wait as drafts in WordPress until you
publish them there. If you delete a post in WordPress, RankControl archives
the article and tells you.

## Analytics

Nothing else to install. The plugin reports page views and AI crawler visits
across your whole site. Under **Analytics → Sources**, choose the WordPress
plugin as the source.

> **Note**
>
> Publishing requests arrive from one fixed IP address. If Cloudflare, Wordfence,
> Sucuri, or another firewall guards your site, one rule lets RankControl
> through: see [the crawler page](/docs/bot). The plugin also needs its own
> path, `/wp-json/rankcontrol/*`, to stay reachable.

## Troubleshooting

**"RankControl plugin not found on this site."** The plugin is not active at
that URL. Install and activate it (step 3), and make sure that the site URL
in RankControl is the same site.

**"Integration key rejected."** The key in WordPress does not match the key
in RankControl. Copy the key from the destination row and paste it again in
**Settings → RankControl** (step 4).

**"Blocked before reaching the plugin (HTTP 403)."** A firewall or bot rule
rejects the request before WordPress sees it. Allow the RankControl IP (see
the note above) and allow the path `/wp-json/rankcontrol/*`. Then save the
key again in WordPress. That forces a check-in, and RankControl accepts the
check-in as proof of the connection.

**The destination stays on "Setup pending".** The plugin has not checked in
yet. Make sure that the plugin is active and that the key is saved. Saving
the key again forces a check-in.

**Posts are published but visitors cannot see them.** A coming-soon or
maintenance-mode plugin hides posts. Turn it off, or publish the site.

**"Could not reach RankControl" on the WordPress settings page.** Your host
blocks outbound requests from WordPress. Ask your host to allow requests to
`api.rctrl.com`, then save the key again.

**"Plugin update available".** Download the ZIP again (step 2) and upload it
with **Replace current with uploaded** (step 3). Your key stays in place.

Source: https://rctrl.com/docs/wordpress/index.mdx
