.pot configuration of Affiliates Enterprise not working properly with Loco Translate

Hi itthinx-team!

Looking into the translation files of Affiliates Enterprise, I found affiliates-de_DE.po 3 times and also affiliates-de_DE_formal.po 3 times. . Each twice with 100% translation progress, and each once with 75% translation progress.

There have also been three .pot files installed called:
affiliates-enterprise.pot (contains 5 strings only)

Loco Translate did not find the appropriate template file and asked for finalization of its configuration.

To my understanding there should be only one template file and only two translation files (formal and non-formal) per language. I think best would be to have only “affiliates-enterprise.pot” for all versions of Affiliates plugin. As the enterprise edition has the most complete feature set, users of “standard” Affiliates and Affiliates Pro could also work with this .pot file. As it is at present, its really hard to understand which translation and which .pot file to use and which of the translation files can be deleted and are outdated / up2date.

Can you please explain which is the .pot file to use with affiliates-enterprise and which German translation to use (affiliates-de_DE.po exists 3 times as said before, all have the same installation date and there seems to be no difference between them).



9 Responses to .pot configuration of Affiliates Enterprise not working properly with Loco Translate

  1. George April 17, 2020 at 3:53 pm #

    Hey Kai, thanks.

    Ticket resolved.

  2. KOS April 17, 2020 at 10:26 am #

    Hi George!

    Thanks for your swift reply. OK, then it’s by design. As said before, it works. Now as I know the intention behind he three .pot-files, I can live with that. You can close this ticket.

    Thanks again,


  3. George April 17, 2020 at 9:10 am #

    Hi Kai,

    There is no requirement for a plugin to use only one translation file. If there was an issue with this design feature we use, then it would have a problem when the site language used is other than English, but it doesn’t. Our plugins are used at the moment in several different languages and actually more than the ones officially shipped with the plugin and there has been no report so far with issues regarding translations.

    If you hover each one of the .po files you can see that each one resides in a different location. For the free version it resides in lib/core, for Pro in lib/ext and for Enterprise in lib/eext.
    The difference between .po and .pot files is that the .pot files are the translation templates one should use if there is no translation for a language while the .po file is the file created for that specific language.

    Yes it might be irritating to look into three different files until you locate the desired string you wish to translate but this is not an issue with the translation itself. After all Loco supports a search field and as I demonstrated on your site there is no issue translating the plugin using Loco.

    Kind regards,

  4. KOS April 15, 2020 at 5:30 pm #

    Hi George!

    Thanks for testing this on our dev environment. I had a look into the link provided by you as well, but unfortunately this was just generic and didn’t bring light into this. I already tried to configure this bundle according to this guide from Loco Translate, but it didn’t work.

    May I guide you to what I believe is the root cause of the problem:
    Please click on Loco Translate on our testing environment and then click on plugins (LocoTranslate/Plugins). Search for Affiliates Enterprise. Now you will see a list of languages. Several of those exist more than once. Take “affiliates-de_DE.po” for example, which is the informal German translation. This one exists three times. It should only exist once.

    Same with “affiliates-fr_FR.po”. It also exists three times. One of those is 100% complete, one 97%, one 96%.

    I guess the root cause is that you provide several translations for exactly the same language instead of providing only one. Same with the .pot-files. You have
    1) affiliates-enterprise.pot
    2) affiliates-pro.pot
    3) affiliates.pot

    Loco Translate (and I think the same applies to any other translation plugin like WPML) expects only one. One plugin, one .pot. So in the ideal world affiliates enterprise would only come with affiliates-enterprise.pot, affiliates pro would only come with affiliates-pro.pot and affiliates would only come with affiliates.pot. This also explains why in my above example one translation is 100% complete whereas another one is only 97% complete. I can only guess that the 100% complete belongs to affiliates standard edition (most sold one I guess) whereas 97% and 96% completion rate belong to either affiliates enterprise or affiliates pro. I say that I “Guess”, because it’s not possible to see this from the name of the language file: It’s all three named affiliates-fr_FR.po.

    Besides completion rate, each of the affiliates-fr_FR.po contains a different number of translation strings:
    100% translated = 96 strings
    97% translated = 417 strings
    96 % translated = 335 strings
    You can see the number of contained strings by simply clicking on each of the affiliates-fr_FR.po files.

    Honestly, to some extend your configuration with a mixture of 3 .pot’s works, yes.

    But let me show you quickly what is the problem in daily translators life: You said that you were able to translate something with LocoTranslate. Fine. Now try to translate “Multi-tiered referrals” (you’ll find that in the english version of Affiliates-Enterprise under “Tiers”). So in which of the french language files will you look into first? affiliates-fr_FR.po or affiliates-fr_FR.po or affiliates-fr_FR.po? 😉 Yes, all have the same name. You’ll find this translation only in affiliates-fr_FR.po with the 97% completion status. So this must be the one of affiliates-enterprise. But as it has a lower number of total strings, some other translations must be missing in there. Its just the delta between standard and enterprise edition, I guess.

    The only way to resolve this seems that you have one .pot per affiliate version (or one containing all strings, even those not used by the standard edition – this shouldn’t cause any problems, I think.

    As said… it works to some extend, but it’s irritating a lot and I don’t know whether multilinguale sites using WPML or Polylang would work with those three .pot files.

    Hope that helped to clarify my point.



  5. George April 15, 2020 at 4:18 pm #

    Hey Kai,

    Thanks for providing access to your site.
    I’ve used Loco, translated a term in Affiliates plugin and the modification seems to have been saved.
    The only issue mentioned is Error: Translation set not known in Affiliates Enterprise and after a search I found this topic in the community forum and a reply from the plugin author, which I think you should check.

    Other than this I haven’t noticed anything else.

    Kind regards,

  6. KOS April 15, 2020 at 11:12 am #

    Hi George!

    That’s great, appreciate! I sent you the credentials by mail.

    Thanks for taking a look into this,


  7. George April 15, 2020 at 10:36 am #

    Hey Kai,

    Sure we can have a look at your setup. You may send all the info to george at itthinx dot com. Normally Loco should be able to locate the three translation templates in Enterprise but we can have a look at it, we don’t use it in general, IMO Poedit is more than enough for translations.


  8. KOS April 14, 2020 at 1:31 pm #

    Hi George!

    Thanks for your swift reply. I’m afraid, I’m not talking about Germany, Austria, Switzerland. I’m talking about Germany (informal) and Germany (formal) being listed in the languages directory of my installation several times. These files are also listed in Loco Translate several times. According to Loco Translate the language file configuration is not complete.

    For better understanding, I prepared some screenshots taken from Loco Translate. Screenshots 1-3 each show parts of the list of available translations (slightly overlapping for better comparison). Screenshots 4+5 show the configuration of Loco Translate and the configuration error message.

    As said before, I think this is related to three .pot files coming with the Enterprise version of Affiliates. One for Standard, one for Pro, one for Enterprise. It looks as if Loco Translate is “confused”, not knowing which of them to take.

    In case you haven’t been working with Loco Translate before, maybe someone from your translation team or community can add on this, please.

    I can offer to setup a dedicated testing environment for you, if required. No big deal. Just let me know an e-mail-adress with which I can (privately) share the credentials.

    Can you please share an e-mail with me to which I can send the 5 screenshots mentioned above.



  9. George April 14, 2020 at 12:52 pm #

    Hey Kai,

    Thanks for reaching support.

    If you are referring to ie
    these are three different translations the first one for Austria German, the second for Switzerland German and the third for Germany German. Each one having an informal and formal version.
    If you need to use/modify the Germany translations then you should look into the files suffixed with de_DE and based on your selection under Settings > General > Site Language choose between formal and informal. The translation file used depends on the Site Language.

    Regarding Loco plugin, I’m afraid I’ve never used it before and wouldn’t be able to assist you on this. Normally I would expect it to find all the translation files involved in a plugin whether there is one or more files included.

    Hope it helps.

    Kind regards,

We use cookies to optimize your experience on our site and assume you're OK with that if you stay.
OK, hide this message.

Affiliates · Contact · Jobs · Terms & Conditions · Privacy Policy · Documentation · Downloads · Useful Plugins · My Account