FAQ: Why don't my translations show up?
This is the number one query on our support forum. Dozens of people ask this question every week, and not everyone's root cause is the same. Some issues may be related to our plugin, but most are not.
It's a very difficult problem to debug without expert knowledge, so here we'll outline the most common issues that we see again and again.
Custom translation files not loading
Beyond being a PO file editor, loading custom translation files is the ONLY other function of Loco Translate.
If Loco Translate is not loading your custom translation files, then it could be due to a bug. If you can demonstrate it, we'll fix it, but usually we discover that our plugin is being prevented from doing its job for some reason beyond our control.
The most common cause of custom translations not showing is when translations are requested before Loco Translate is running. Please read the FAQ about custom file loading problems, in particular the very common early loading problem.
If most of your translations are showing up, but you have a problem with just a few words, see this FAQ instead. Otherwise, see below for some more possible causes.
Other possible causes of missing translations
Your files have been deleted
If you've saved your own custom files in the "author" or "system" locations then WordPress may have deleted or modified them during an update. See the FAQ about disappearing translation files.The files are named wrongly
It can happen that bundles declare incorrect information which causes your files to be saved with the wrong names. Check that the bundle declares the same Text Domain that it actually uses, and configure Loco Translate as necessary. If you can't check this yourself, ask the bundle author to confirm what your files should be called.Something is caching the strings
Some plugins and themes allow you customize text via admin screens. This can result in the original (untranslated) strings being saved in the database and served up later instead of the translated texts you're expecting. See this note about settings.The strings aren't actually translatable
The bundle's template file defines the strings that are available for translation. This does not guarantee the string actually exists. Authors often ship template files that are not up to date with their source code, but Loco Translate will not argue with the author's template file.Your language isn't set correctly
For translations to display on your site, the target language must be set at the time the translation files are loaded. Dynamic language switching can cause problems here if not done correctly. Although we can't provide personal help with this, see our brief guide to setting your WordPress language.The translations are for JavaScript
Loco Translate supports JSON translation files for use withwp_set_script_translations
but this system has some significant pitfalls. See the caveats in our page about JavaScript i18n support.There are other ways authors might localize JavaScript too, so check with the vendor how they handle this and whether they use standard WordPress methods.
Dead end
Please don't ask us to investigate your individual case. There is no support for this problem unless you can demonstrate a fault.
We will investigate any reproducible bug, but this requires you post steps to reliably demonstrate the fault in a way that we can see it too. Screen grabs and videos of your translations showing in English are not helpful, and due to the volume of such posts we're unlikely to respond with follow up questions.
If you've tried all the suggestions above then your best course of action is to contact the author of the theme or plugin you're translating. Don't confuse them by asking for help with Loco Translate (your choice of editor shouldn't matter). Just tell them where your MO files are saved and ask them why the translations aren't displaying.