Fix Magento "Missed phrase" Error

The first thing you face once managing Magento 2 multi-language store, is translating all of your content and landing pages. It helps to make your website convenient for each of your targeted customers. 

The content you create and publish on the frontend is not the only content you need to translate. That's why you have to generate a translation dictionary to form a list of texts to translate in email templates, third-party extensions, JS files, and so on. 

Although our Magento 2 Translation Plus module helps you to manage and generate that translation dictionary, you may still face the Magento "Missed phrase" error. 

It mainly appears when you try to generate a translation dictionary when running the following command:

bin/magento i18n:collect-phrases --magento

Most often, the "Missed phrase" error is caused by the third-party extensions when the system tries to translate an empty string like __('').

Correspondingly to learn what module is causing the issues you have to run the following command: 

grep -rnw . -e "__('')" -e '__("")'

This command will tell you what files contain those empty strings as a parameter for the translation function. 

Note: you have to pay attention to the non-Magento folders and files of the custom modules and themes.

If the command retund nothing, you may run next commands to find a missed phrase

bin/magento i18n:collect-phrases ./app/
bin/magento i18n:collect-phrases ./vendor/

Once you track down those files you have to change __('')   to  ''  and  __("")  to  "" in the file's code.

After you made the required changes in the corresponding files, you can to regenerate the translation dictionary. The error should be eliminated.