Back to Community

Why Won't My WooCommerce Translations Work? A Troubleshooting Guide for Loco Translate

51 threads Sep 10, 2025 PluginLoco translate

Content

If you're using Loco Translate with WooCommerce and finding that some translations just won't appear on your site, you're not alone. This is a common point of confusion. Based on community reports, this guide will walk you through the most frequent reasons this happens and how to resolve them.

Why Your WooCommerce Translations Might Not Be Showing

Loco Translate's primary job is to create and save PO/MO translation files. If it has successfully saved your translations, the issue is often not with Loco Translate itself but with how WordPress or other components on your site are loading the translations. Here are the top culprits:

1. The String is Not Where You Think It Is

One of the most common issues is that the text you want to translate isn't actually coming from the WooCommerce plugin. It could be provided by your theme, another plugin (like a WooCommerce extension), or even a JavaScript file.

  • How to check: Temporarily switch to a default WordPress theme (like Twenty Twenty-Four) and disable all other plugins except WooCommerce. If the translation now works, you know another component is the source. Re-enable themes and plugins one by one to identify the culprit.
  • Example: A "Shop Now" button might be a string defined by your theme, not WooCommerce, which is why you can't find it in WooCommerce's translation files.

2. JavaScript (JSON) Translation Issues

Modern WooCommerce blocks and features heavily rely on JavaScript. Translations for these strings require a separate JSON file, not just a PO/MO file.

  • How to check: In Loco Translate, navigate to your WooCommerce translations and click "Scripts." This shows you which strings are destined for JSON files. If your string is listed here, ensure you have translated it and that the JSON file has been generated.
  • Example: Strings like "Remove item" or "%d in cart" from the cart block are often handled by JavaScript and require JSON translations.

3. Incorrect Language Code or Location

Your translation files must be saved in the correct location and use the exact language code that your WordPress site is set to use.

  • Language Code: If your site language is Spanish from Spain (es_ES) but you saved a translation file for just es, it will be ignored. Always match the language code exactly.
  • File Location: Saving files in the system directory (/wp-content/languages/...) is safe, but they can be overwritten by WordPress updates. Saving in the custom directory (/wp-content/languages/loco/...) is recommended for persistence, but you must ensure your theme or plugin is configured to look for translations there.

4. Caching and Optimization Plugins

Aggressive caching can serve old, untranslated text to your users. This includes page caching, browser caching, and CDN caching.

  • Solution: After saving translations, clear all levels of cache on your site—your caching plugin, server-side cache, and CDN cache. Also, try viewing the site in a private/incognito browser window to bypass browser cache.

5. Automatic Translation Services

Using services like Google Translate through Loco's API can sometimes break string formatting.

  • The Problem: Placeholder variables like %s (for a product name) or %d (for a number) might get corrupted or removed during automatic translation.
  • Solution: If a translated string with a placeholder isn't working, open it in Loco's editor and manually check that the placeholder is present and correctly formatted in the translation.

6. Conflicting Translations

Your theme or another plugin might be creating its own translation for the same string, overriding yours.

  • How to check: This is difficult to debug but can often be identified by the process of elimination in step 1. If a translation works with your theme disabled but breaks when it's enabled, your theme is likely the source of the conflict.

Still Stuck?

If you've worked through these steps and your translation still isn't appearing, the issue may require deeper investigation into the specific plugin or theme providing the string. The Loco Translate team has noted that they cannot investigate conflicts within third-party themes or plugins. Your best course of action is to contact the support for the theme or plugin that is the source of the untranslated string, as they will know best how their software handles translations.

Related Support Threads Support