For a “PO” translation file, the text in the code must be identical to the text in the “PO” file BUT I did not know that the spaces were important … I removed the spaces and it works.
FOR EXAMPLE:
****user.php from wp-includes
$pass_change_text = __( ‘Hi ###USERNAME###,
This notice confirms that your password was changed on ###SITENAME###.
….’)
=========
*****PO file
msgid “”
“Hi ###USERNAME###,\n”
“\n”
“This notice confirms that your password was changed on ###SITENAME###.\n”
….
msgstr “”
“Salutations ###USERNAME###,\n”
“\n”
“Ce message confirme que votre mot de passe a été modifié sur ###SITENAME###.\n”
….
========
In the “PO” file we see 2 line or enter (\n) And in the user.php code we also see 2 lines but what we do not see are the spaces (which is normally invisible to The naked eye).
When I removed them all, it’s worked perfectly.