The Problem: Running Multiple Sites From One WordPress Database
My company had a wordpress site running woocommerce with several thousand products. While having a site with so many products was great, we thought there would be a lot of opportunity in creating niche-specific sites surrounding subsets of our products.We determined that the most ideal situation would be to have one centralized database of products that fed all of the sites. This way, we could keep all of our products synced and avoid having to update multiple sites with the same content.
The catch was that the only thing we wanted synced was the products and their attached images and taxonomies (categories, tags, and attributes). We wanted each site to have it’s own theme, it’s own pages, and it’s own posts. This was important because, as we all know, the search engine gods do not like duplicate content so to be most effective, we needed to make sure that each site would indeed contain some unique content as well as a unique look.
And so our search began.
The Solution: Syncing Posts Across WordPress Sites
We eventually found a solution that is working wonderfully for us, but we also realize that what works for us doesn’t always work for others, so we’ve included a few other things that we tried and a few things we didn’t get around to trying that might better suit your needs.
Our solution was to use the ThreeWP Broadcast plugin by Edward Plainview.This plugin requires a multisite installation of wordpress, but allows us to sync any custom post types across multiple sites. We chose it over other solutions for a few reasons:
- The plugin can keep posts in sync meaning that when a post is edited on the parent site, the post on the child site is updated as well. This applies to post content, post statuses, post taxonomies, and any custom fields.
- There are some great add-ons that can be purchased for only $100 (which we did) that extend the functionality of the plugin the best of which allow users to bulk-add posts to a site or to multiple sites as well as a queue feature that places all post syncs into a queue and processes them automatically. Both of these are a huge necessity for anyone trying to sync more than just a few posts or products across more than just a few sites.
- It allows us to not have to sync all fields. If there are custom fields we don’t want to sync (Yoast SEO data for example), we can block those custom fields from transferring to the child sites.
- Edward is great to work with. With the questions we did have about the plugin, Edward usually got back to us the same day and was incredibly helpful in answering our questions.
This plugin works for us, and we use it now on two multsite installations. While it requires a lot of computing power, it was really the only solution that we found that met our needs of syncing products across multiple sites.