Multi-site setup
The Propeller WordPress Plugin supports WordPress Multisite. This page explains how to install, activate and configure the plugin across a network of WordPress sites.
Network-level installation
In a Multisite network, install the plugin at the network level:
- Go to Network Admin > Plugins
- Upload and install the Propeller plugin
- Choose whether to Network Activate (activates for all sites) or leave it for per-site activation
Network Activate vs per-site activation
- Network Activate — The plugin is active on every site in the network. Each site still needs its own configuration (API key, Channel ID, etc.) but the plugin code is loaded everywhere.
- Per-site activation — Only sites where an admin explicitly activates the plugin will load it. Use this when only some sites in the network need commerce functionality.
Per-site configuration
Even when the plugin is installed at the network level, each site has its own configuration. Go to Propeller > General on each individual site to set:
- API key and Orders API key
- Channel ID
- Catalog root ID
- Anonymous user ID
See Install and Configure for setup steps and General settings for field descriptions.
This means each site in the network can connect to a different Propeller channel, show a different catalog and serve different audiences.
Common multi-site scenarios
One catalog, multiple languages
All sites share the same Propeller environment and catalog root. Each site serves a different language. Products, categories and prices come from the same source but are displayed in the site's language.
Configuration:
- Same API keys on all sites
- Same Channel ID on all sites
- Same Catalog root ID on all sites
- Set the website language on each site via WordPress Settings > General > Site Language. When you change the site language, product and catalog data is also fetched in that language from Propeller
- For sites that support multiple languages, use TranslatePress (see Translations and valuesets)
Separate catalogs per site
Each site shows a different subset of products. This is useful when you run multiple brands or business units from a single WordPress Multisite network. Each site uses a different Catalog root ID to show a different branch of the category tree in Propeller.
Configuration:
- Different Catalog root IDs per site (each site starts from a different branch of the category tree)
- Same or different Channel IDs depending on your setup (different channels can also provide different anonymous user pricing)
- Same or different API keys depending on your Propeller setup
- Language and currency configured per site
Shared network, selective commerce
Only some sites in the network need commerce functionality. The rest are regular WordPress sites (blogs, marketing pages, documentation).
Configuration:
- Install the plugin at network level but do not Network Activate
- Activate the plugin only on sites that need commerce
- Non-commerce sites are unaffected by the plugin
Considerations
- Performance — Each site makes its own GraphQL API calls. A network with many active sites generates more API traffic. Consider Propeller's rate limits and caching when planning a large network.
- Caching — Only cache pages for anonymous (non-logged-in) visitors. Do not cache content for logged-in users because B2B storefronts show customer-specific catalogs, pricing and order data that varies per user.
- Updates — Updating the plugin at the network level updates it for all sites. Test updates on a staging environment before applying to production.
Next steps
- Understanding the plugin — how the plugin architecture works