Use automatic translation of content in the CMS
Bloomreach Experience Manager offers a way to have a document automatically translated when a translation is created. This feature is based on the google translate service and requires a google translate key to use.
To enable this feature add the following workflow configuration at the node /hippo:configuration/hippo:workflows/translate:
/hippo:configuration/hippo:workflows/translate + hippotranslation:translated [hipposys:workflow] - hipposys:classname: org.onehippo.translate.TranslateWorkflowImpl - hipposys:display: Translation workflow - hipposys:nodetype: hippotranslation:translated + hipposys:types [hipposys:types] + hipposys:config nt:unstructured] - google.key: [ your-google-translate-api-key ]
This will activate automatic translation for any document type that has (inherited) the mixin node type hippotranslation:translated. You can also bind to a different node type, such as a base document type, or a specific document type. To use the Google Translate API, a key must be acquired from https://console.developers.google.com/.
Another property "timeout" defines how long each translation request is allowed to take (in milliseconds). In case of timeouts or other errors, the translate-content operation is aborted and a message is presented to the user. However the translated document is still made available, as if no translate service had been configured.
The implementation will scan for fields in the document that require translation and run them through the translation service. Due to limitations of the translate service, not all text is always translated. Only fields that are of types Text or are Rich text fields ( hippostd:html) are offered to the translate service. String fields are not translated, as they mostly contain labels rather than translatable text.