Extendware Deepl Translator for Magento 2

DeepL Translator - High quality mass translations. Make instant changes to your eCcommerce Multi-Store store with the Deepl Translator, providing high quality automated translations for your products, category and shop content. Save time when updating your eCommerce store with Extendware’s Deepl Translator. With this Magento 2 Extension, you don’t have to go to each and every section (product, category, CMS pages and block) store to make changes to your field. Instead, from the DeepL Translator, you can translate a section with a single click.

Extendware’s DeepL Translator includes:

  • Translate product texts and attributes

  • Translate category texts

  • Translate CMS Pages

  • Translate CMS Blocks

  • Languages supported: Bulgarian, Chinese, Czech, Danish, Dutch, English (American), English (British), Estonian, Finnish, French, German, Greek, Hungarian, Indonesian, Italian, Japanese, Latvian, Lithuanian, Polish, Portuguese (all except Brazilian Portuguese), Portuguese (Brazilian), Romanian, Russian, Slovak, Slovenian, Spanish, Swedish and Turkish.

Please notice, that the extension requires a valid DeepL API key, which is available at 4,99 € per month directly at DeepL .

Installation in your Magento Online Shop

  • Note : in production please use the --keep-generated option

Type 1: Zip file

  • Unzip the zip file in app/code/Extendware

  • Enable the module by running php bin/magento module:enable Extendware_DeeplTranslator

  • Apply database updates by running php bin/magento setup:upgrade*

  • Flush the cache by running php bin/magento cache:flush

Configuration in your Magento store

  • Api (deepltranslator/general/api)

  • Key (deepltranslator/general/key)

  • Product Attributes To Translate (deepltranslator/general/product_attributes)

  • Category Attributes To Translate (deepltranslator/general/category_attributes)

  • Page Fields To Translate (deepltranslator/general/page_fields)

Attributes

  • Product - Translation Check (translation_check)

  • Product - Translation Date (translation_date)

Usage

Config Setting (Store -> Configuration -> Extendware -> Deepl Translator)

  • User select paid/free version add add api key for connection also admin can select which field they want to translate using deepL as only selected product attributes would be translated

alt_text

  • Select category attributes which admin want to translate.

Attributes

  • Translation Date : When product trasnlation has been processed admin can see last translation time from grid as well as from product detail page from backend.

alt_text

  • Translation check : This attribute is for manual process as after translation if admin change/correct any translation manually and admin can set translation check = Yes and our extension will exclude that product for any further translation so admin’s manual changes won’t overrite. also admin can filter the translation check from grid.

alt_text

Product Translation

1. Translate using single product mode:

  • With this user can see button to do deepL translate and can select specific store for translation.

  • Please note that our translation woked based on store locale means if user select store DE then extension will take locale set to DE store and translate text into that local

  • For example if user choose DE store then in out case de_DE is store local so it will translate given text into DE language for that specific store

alt_text

2. Translate using mass update from backend grid

  • Same like single product admin can select multiple products and translate by selecting store.

  • Additional thing is message queue system which allow translation to work in backgroud and translation will be done in batches of 50 and run along with cron please check notes section for more details

alt_text

3. Translate using CommandLine

 php bin/magento extendware_deepltranslator:translate -r1-2 -s2 (without message queue)
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id


php bin/magento extendware_deepltranslator:translate -r1-2 -s2 -m[username_of_admin]
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

  • Where [m] represent the username of admin where you can find queue from system->action logs

Category Translate:

1. Using CommandLine:

php bin/magento extendware_deepltranslator:translatecategory -r1-2 -s2 (without message queue)
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

2. Using CommandLine:

php bin/magento extendware_deepltranslator:translatecategory -r1-2 -s2 -m[username_of_admin]</pre>
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

  • Where [m] represent the username of admin where you can find queue from system->action logs

3. Category Translate using single category backend

  • With this user can see button to do deepL translate and can select specific store for translation.

  • Please note that our translation woked based on store locale means if user select store DE then extension will take locale set to DE store and translate text into that local

  • For example if user choose DE store then in out case de_DE is store local so it will translate given text into DE language for that specific store

alt_text

Attribute Translate:

1. Using CommandLine:

php bin/magento extendware_deepltranslator:translateattribute -r1-2 -s2 (without message queue)
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

2. Using CommandLine:

php bin/magento extendware_deepltranslator:translateattribute -r1-2 -s2 -m[username_of_admin]
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

  • Where [m] represent the username of admin where you can find queue from system->action logs

3. Attribute Translate using single Attribute backend

  • With this user can see button to do deepL translate and can select specific store for translation.

  • Please note that our translation woked based on store locale means if user select store DE then extension will take locale set to DE store and translate text into that local

  • For example if user choose DE store then in out case de_DE is store local so it will translate given text into DE language for that specific store

alt_text

Page Translate:

1. Using CommandLine:

php bin/magento extendware_deepltranslator:translatepage -r2-4 -s2 (without message queue)
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

2. using CommandLine:

php bin/magento extendware_deepltranslator:translatepage -r2-4 -s2 -m[username_of_admin]
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

  • Where [m] represent the username of admin where you can find queue from system->action logs

3. Page Translate using single page backend

  • With this user can see button to do deepL translate and can select specific store for translation.

  • Please note that our translation woked based on store locale means if user select store DE then extension will take locale set to DE store and translate text and create new page with DE store.

  • If URL key exist for DE store then it will throw error as page for DE store is already there

  • This will also remove DE store ID from main page

  • For example there is a page which is assigned to all stores and if user click on translate for DE store then if translation is successful then user can see new page with only DE store assign and in main page DE store was removed.

alt_text

alt_text

4) Translate using mass update from backend grid

  • Same like single Page admin can select multiple pages and translate by selecting store.

  • Additional thing is message queue system which allow translation to work in backgroud and translation will be done in batches of 20 and run along with cron please check notes section for more details

alt_text

Block Translate:

1) Using CommandLine:

php bin/magento extendware_deepltranslator:translateblock -r2-4 -s2 (without message queue)
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

2) using CommandLine:

php bin/magento extendware_deepltranslator:translateblock -r2-4 -s2 -m[username_of_admin]
  • Where [r] represent product range user can define range with product id like 1-20

  • Where [s] represent store id

  • Where [m] represent the username of admin where you can find queue from system->action logs

3) Block Translate using single block backend

  • With this user can see button to do deepL translate and can select specific store for translation.

  • Please note that our translation woked based on store locale means if user select store DE then extension will take locale set to DE store and translate text and create new block with DE store.

  • If URL key exist for DE store then it will throw error as block for DE store is already there

  • This will also remove DE store ID from main block

  • For example there is a block which is assigned to all stores and if user click on translate for DE store then if translation is successful then user can see new block with only DE store assign and in main block DE store was removed.

alt_text

alt_text

4) Translate using mass update from backend grid

  • Same like single block admin can select multiple pages and translate by selecting store.

  • Additional thing is message queue system which allow translation to work in backgroud and translation will be done in batches of 20 and run along with cron please check notes section for more details

alt_text

Notes

  • To do translation with command line please make sure cron is ruuning fine in your magento instance

  • To check it you can run

      crontab -l
    
  • Also run cron manually you can goto root of magento installation and run

      php bin/magento cron:run
    
  • Also there is a manual way to to run translation without running cron by using

      bin/magento queue:consumers:start product_action_attribute.translate --max-messages=10000
    
  • Any translation with message queue admin can check progress from System -> Bulk Actions

alt_text

Changelog

  • release: 1.1.0 <15/07/2022>

  • feature: 1 Notification to admin when deepL add new language

  • feature: 2 Add Multi Language Supports inclues

  • Bulgarian : BG
  • Czech : CS
  • Danish : DA
  • German : DE
  • Greek : EL
  • English : EN
  • Spanish : ES
  • Estonian : ET
  • Finnish : FI
  • French : FR
  • Hungarian : HU
  • Indonesian : ID
  • Italian : IT
  • Japanese : JA
  • Lithuanian : LT
  • Latvian : LV
  • Dutch : NL
  • Polish : PL
  • Portuguese : PT
  • Romanian : RO
  • Russian : RU
  • Slovak : SK
  • Slovenian : SL
  • Swedish : SV
  • Turkish : TR
  • Chinese : ZH