
How to Sync a WordPress Blog to Shopify: The Whole Setup, Start to Finish
There are two pieces to install, an app on the Shopify side and a plugin on the WordPress side, plus one API key that introduces them to each other. If your WordPress admin and your Shopify admin are both already open, the whole thing is a coffee's worth of work.
Before you start, check you have: a Shopify store on any paid plan, WordPress 6.3 or newer running PHP 8.1+, and admin access to both.
Step 1: Install the Shopify app
In your Shopify admin, go to Apps → Shopify App Store and search for Wash: Blog Manager. Click Add app, read the permission list, then Install app.
Shopify drops you into the Wash dashboard afterwards. Two things happen there:
- You pick a plan. Free is a real plan with no time limit, so start there.
- The app creates the metafield definitions it needs, on its own.
Step 2: Install the Wash Connector in WordPress
The Wash Connector is a WordPress plugin. It runs on your web server, so nothing gets installed on your computer.
- Download wash-blog-manager.zip. It's always the latest version, and you don't need an account.
- In WordPress, go to Plugins → Add New → Upload Plugin
- Pick the ZIP, click Install Now, then Activate Plugin
If you'd rather not click through the admin, unzip it into /wp-content/plugins/ over FTP, or let WP-CLI fetch and activate it in one go:
wp plugin install https://github.com/tradik/wp-wash/releases/latest/download/wash-blog-manager.zip --activate
All three end up in the same place.
Step 3: Introduce them to each other
In the Wash app in Shopify, open Connections, click Add Connection, then Generate connect code. You get a short code like ABCD-EFGH-JKMN that works once, for 15 minutes.
In WordPress, open Settings → Wash Connector, tick the consent box, paste the code and click Connect to Shopify. You never type the store's address; the code already says which store it is.
You'll know it worked when the page shows Connected, your store name, and a list of the Shopify blogs it can see. If the blog list is empty, the connection went through but the permissions didn't. Reinstall the app and re-check the permission screen.
Step 4: Decide where posts land
Shopify can have several blogs; WordPress has categories. A blog mapping is just the rule connecting the two.
Go to Wash Connector → Blog Mappings → Add New Mapping, pick a WordPress category, pick the Shopify blog it should feed, and save. Repeat for as many as you need:
| WordPress category | Shopify blog |
|---|---|
| News | News |
| Tutorials | Guides |
| Company Updates | About Us |
This doubles as your scope control. A category with no mapping doesn't sync, which is the simplest way to keep internal or draft-ish categories off the storefront.
While you're in the settings, it's worth deciding two more things: whether synced posts arrive on Shopify published or as drafts, and which Shopify author they're attributed to.
Step 5: Sync something real
Don't test with an empty post; you won't learn anything from it. Take an existing article with a few images, a list, and a filled-in SEO description, and either publish it or hit update.
Then open Shopify admin → Content → Blog posts. The article normally shows up within seconds. Check the things that break in a manual copy-paste: are the images on Shopify's CDN rather than hot-linked back to WordPress, did the headings and lists survive, is the meta description populated?
Edit one line in WordPress, update, and watch the same article change on Shopify rather than a second copy appearing.
What you should expect afterwards
Publishing in WordPress is now the whole job. Later edits propagate on their own, and unpublishing in WordPress takes the Shopify article down with it.
Three limits are worth knowing up front:
- The free plan is small: 5 new articles and 20 edits a month on one WordPress connection. It's sized for evaluating Wash, not for running a publishing schedule.
- SEO field sync needs Pro. On Free, titles and meta descriptions from Yoast or Rank Math don't come across.
- Shopify's blog isn't WordPress. Some Gutenberg blocks have no Shopify equivalent and degrade to plain HTML. Sync one of your most layout-heavy posts early so you find out where the edges are on your content, not on ours.
If something doesn't line up, the sync log in the Shopify app tells you which post failed and why. Beyond that, we read email at [email protected].
Start on the free plan. No card required.