So, How to Post to Multiple WordPress Sites at Once

First of all, you have to install and activate the plugin only on one website – the main website from which you are going to crosspost the content to the other sites.

The next step is to add the websites to which you are going to share the content in the plugin settings.

1. Add sites you would like to post to in plugin settings

Please go to Settings > Crosspost and then navigate to the Sites tab. Here you can add an unlimited number of WordPress websites that you are going to sync posts between.

add a WordPress site for crossposting in plugin settings
When you have multiple sites on this page, you can reorder them with drag and drop.

In order to add a website, you have to provide the following:

  • Site Address (URL) – You can type it in any format – with https:// or http:// or without. It doesn’t really matter because, in the end, your website should be available at https://, so please double-check that it has an SSL certificate.
  • Login – It is your username on that website. Actually, it can be any user who has all the necessary capabilities to publish or update posts. For this specific user, you should also create an application password.
  • Application Password – It is not a user password; keep that in mind. But it can be easily created in user profile settings, more info here.
  • (for WordPress.com sites) Client IDYour application client ID.
  • (for WordPress.com sites) Client SecretYour application client secret.

In case you have an error adding a website, please double-check that the REST API is turned on. Usually, it is turned on by default, but your website developer or some plugin could turn it off for some reason.

When a site is added, you can change some of its settings if you click the “Edit” link:

Settings of the connected site in Simple WordPress Crossposting
Changing the Site Address (URL) could be super-helpful when, for example, you had done all the crossposting work when your site was on a staging server, and after that, you moved this connected site to a live server.

2. Configure the plugin

It is a completely optional step, but let’s take a quick look at the plugin settings pages.

WordPress crossposting plugin settings

On the General tab, you can:

  • Decide which post types are allowed to be shared between WordPress sites. If the field is empty, the crossposting is going to be turned on for all publicly registered post types.
  • The plugin crossposts a post only when you publish it, but you can make the posts be crossposted even when you save them as drafts. Custom post statuses are also supported.
  • My plugin also allows you to automatically remove the posts from all sites they were published to if they have been removed from the main website. This option is turned off by default, but you can turn it on.
  • Another interesting feature is Auto Mode, which has been requested many times. If you activate it, the checkboxes for selecting websites will disappear, and the plugin will crosspost automatically to all the added sites.

Now, let’s take a look at the Fields tab.

Configure what WordPress post data allow for crossposting

On this tab, you can decide exactly what should be copied between sites:

  • Maybe you don’t need post excerpts or some meta keys – you can turn them off here.
  • Or sometimes you do not need the posts to be published on other websites right away. Just turn off Post Status here – it allows you to copy the posts as drafts.
  • Turn off the Date if you would like to use the current date (and time) instead of taking the original post date.

It can be configured for product data as well if you have WooCommerce installed.

3. Start syncing posts between sites

Now, once the plugin is configured and the sites you would like to post to should appear in the Publish on section.

WordPress sync posts between sites
As you can see, I am using Block Editor (Gutenberg) here, but do not worry, it is not necessary. For example, you can use the classic WordPress editor and Elementor, the “Publish on” section will appear in the right part of the screen anyway.

In order to make it perfectly clear how WordPress content sync is actually working, I’ve created a table below.

ConditionWhat happens
You create a new post on “Site 1” and check “Site 2” and “Site 3” in the “Publish on” section.The post will be published on “Site 2” and “Site 3” (or created as a draft if post statuses are turned off in the plugin settings).
After making some changes in the post, you uncheck “Site 3” in the “Publish on” section, and then you click the Update button.The changes will be automatically reflected on “Site 2” but not “Site 3” (because the checkbox is unchecked).
You installed the plugin on “Site 2” and added “Site 1” in the plugin settings.Now, you can sync content between sites in both ways.

The plugin also adds an admin column in order to see clearly which sites specific WordPress posts are currently synced between:

Column with WordPress sites posts are currently synced with
You can also use this column to filter posts by a specific site (just click on a site name).

Bulk sync posts between sites

The feature to bulk sync multiple posts between WordPress sites (or WooCommerce products between stores) is also available in this plugin as a free add-on, which you can find here.

Bulk sync multiple posts between WordPress sites
There are no limits to how many items you can select. The add-on uses batches and WP Cron.

If you have a really large number of posts on your site (for example, tens of thousands) and want to sync their content between sites all at once, then, instead of bulk actions, you may be interested in using a WP-CLI command that comes with the plugin.

Sync Products Between Sites in WooCommerce

You can also use this plugin to sync products with multiple WooCommerce stores. My plugin uses the WooCommerce API for that, and no additional configuration is required. Don’t forget to add a site, though.

Example of how it works for variable products and their variations:

In case you’re using WooCommerce, some additional options are available in plugin settings:

WooCommerce product sync settings

And, of course, you can exclude specific WooCommerce product data from syncing, for example, stock quantities or prices (may be useful if your stores have prices in different currencies).