Loyalty campaign translations

Loyalty campaign websites can be translated into multiple languages. The visitor's browser language will be used to match an existing translation, but visitors may change their language at any time. Their preferred language is stored in a cookie and will be used the next time the website is visited.

Loyalty campaign website language selector

Translations only apply to the generic content, rewards are not multi-language. This means that you can focus a loyalty campaign on one language.

If you want to target multiple languages, you need to create multiple campaigns with different rewards. You can then use a domain strategy for the loyalty websites like:

  • en.example.com vs de.example.com
  • loyalty.en.example.com vs loyalty.de.example.com
  • loyalty.example.com vs loyalitat.example.com
  • customerloyalty.com vs kundenbindung.com

Add a translation

Translation directories and files can be found in the resources/lang directory:


All directories with more than two letters are ignored. The _es and _nl directories are example translations. You can remove the _ to activate the translation, for example rename _es to es. Automated translation is used for the Spanish translation, so it probably won't make much sense.

The _new_language directory can be used as a blueprint for a new translation. For example, copy the directory and rename it to de. Then modify the file(s) in the directory to match the new language.

Finally, copy en.json to for example de.json and translate this file too.

Translate terms and conditions

The terms can be found in the resources/views/campaign/terms.blade.php file. Copy this file and name it like terms-{language_code}.blade.php, where {language_code} is the two-letter language code matching the translation above. For example terms-de.blade.php.