BabelTranslate
BabelTranslate simple but very useful MODX extra if you want to translate your multilingual sites with a translation service (currently it supports DeepL API Free and Pro and Reverso).
BabelTranslate adds automatic translations to Babel. So you'll need to set up your contexts first, configure what to translate, and then you can use the Translate toolbar to translate the current ressource from a linked resource. Optionally, the translation can happen automatically when Babel creates a resource.
BabelTranslate can translate standard content fields (pagetitle, introtext, etc.), text and JSON-based TV types - and even ContentBlocks blocks! You need to define what to translate in a couple of system settings.
With BabelTranslate 1.8.0 it is possible to protect the translation of
ContentBlocks fields by enabling the babeltranslate.use_protected system
setting. If a ContentBlocks field contains the translated_to field setting and
the field setting of the source ContentBlocks field contains the ID of the
target resource, this ContentBlocks field will not be translated again per
default. This can be re-enabled via a checkbox in the Translate from
confirmation window.
Also with BabelTranslate 1.8.0 the link tags in translated fields are
changed from [[~1234]] to [[~[[BabelTranslation?
&contextKey`[[*context_key]]` &resourceId=`12345`]]]] to make automatic
translated link targets possible in translated resources.
The volume of DeepL API Free translation is 500,000 characters per month, which is enough to translate 10-100 pages (depends a lot on the length of the content).
It is a perfect solution for users who want a well-translated content in multilingual sites.