Managing a Multilingual WooCommerce Catalog for EU Sales
For a manufacturer or distributor, multilingual commerce is often a catalog-maintenance problem before it is a translation problem. Product names, specifications, categories, manuals, prices, and availability change at different speeds, while every market still needs a coherent product page.
A dependable workflow separates the shared product identity from the words that vary by language, then makes both visible for review before a batch reaches WooCommerce.
Begin with stable catalog identity
SKU is the normal cross-store key for WooCommerce products. In a multilingual Matrix workflow, Matrix ID / External ID can provide a source-owned identity. Avoid using WordPress post IDs from one store as if they were portable to another.
The same principle applies to categories. Use source_id and parent_source_id to describe the hierarchy outside WordPress. Local term IDs can differ between staging and production without changing the meaning of the source.
Stable keys make routine changes safer: the next price list or translated description should update the same product rather than create another one.
Keep shared and translated fields explicit
A Matrix source can put language-specific content beside shared catalog values:
sku,title|en,title|de,title|pl,description|en,description|de,description|pl,regular_price
PUMP-200,Industrial Pump,Industriepumpe,Pompa przemysłowa,English copy,Deutscher Text,Polski opis,799.00
Titles and descriptions differ by language. SKU and base price appear once. Stock, identifiers, and many technical values are also often shared, depending on the store configuration.
This structure does not decide which translation is correct. It gives translators, product owners, and import operators one place to see the batch.
Give technical copy a real owner
Product claims, tolerances, safety notes, compatibility, and installation instructions should be reviewed by someone who understands the product and market. A fluent sentence can still be technically wrong.
Use terminology lists and explicit approval states outside the import. Shirely moves the approved fields into WooCommerce/WPML; it does not certify the translation or the product claim.
For images and documents, decide whether they are shared or market-specific. A translated title does not automatically make an English-only safety diagram suitable for every storefront.
Use Google Sheets as a controlled handoff
A shared Sheet can help product and language owners review the same Matrix data. A public published Sheet can be imported without credentials. Private import and every export require a Google Service Account with access to the Sheet.
Shirely runs discrete jobs. Shirely 1.3 can save supported imports and catalog/content exports as Automation slots, but editing a cell does not immediately change WooCommerce.
Use Run now to prove a saved configuration and inspect Run History. WP-Cron offers hourly, twicedaily, and daily intervals but does not guarantee an exact start time. System cron with WP-CLI is more predictable for a large or time-sensitive catalog window.
Review every market on staging
For each release batch, sample:
- products with the longest translated copy;
- simple and variable products;
- translated categories and language-switcher links;
- units, dimensions, and technical terminology;
- images and downloadable material;
- displayed price, tax, currency, and stock behavior;
- cart and checkout in each supported configuration;
- SEO title and description output if imported.
Market-specific tax, shipping, privacy, safety, and consumer-information decisions remain outside Shirely. Involve the appropriate business and legal owners rather than treating a successful import as market approval.
Keep updates sequential and auditable
Do not overlap jobs that can modify the same products, terms, or WPML/WCML translation groups. A same-slot lock is not a global lock across the wizard, Automation, WP-CLI, and every other writer.
Keep the reviewed source, result counts, and a database backup for meaningful catalog releases. When a value is wrong, the team should be able to answer which source row supplied it and which run wrote it.
Start with the WPML product import guide and the Google Sheets translation workflow.