Background of the issue:
I am trying to translate custom emails created with the 'Order Status Manager for WooCommerce' plugin. I have added the custom text strings to WPML's 'String Translation' by using the 'Translate texts in admin screens' feature. I translated the string with the following details: Domain: admin_texts_woocommerce_wc_order_status_email_3254_settings, Name: [woocommerce_wc_order_status_email_3254_settings]body_text, String: Your order is now.....
Symptoms:
The custom emails remain in English only, despite being translated in WPML's 'String Translation'. WooCommerce standard emails are translated correctly.
Questions:
Why are my custom emails not being translated despite being added to 'String Translation'?
How can I ensure that custom emails created with 'Order Status Manager for WooCommerce' are translated correctly?
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
Apologies — I know we already went through this yesterday, but unfortunately, we've encountered an unexpected issue with the sandbox database, and I'm no longer able to access it properly.
Could I kindly ask you to please do the following again in the sandbox?
1. Install the Order Status Manager for WooCommerce
2. Set the string in the email again
3. Translate the relevant strings
4. Place an order for the test product I created
5. Resend the email
This will allow me to check the email logs.
Here’s the sandbox link: hidden link
Thanks again for your help and patience — I really appreciate it!
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
This has been escalated to our Compatibility team and may take some debugging time, I'll get back to you as soon as I have any news or questions for you.
3. Go to WooCommerce > Settings > Emails, open the relevant custom email, and re-save it.
4. Go to WPML > String Translation and search for the email body text under the text domain `woocommerce-order-status-manager`, then provide translations as needed.
5. To test the result, go to WooCommerce > Orders, and change the order status back and forth between “On hold” and “Goods Ready” to trigger the email notification.
6. Check your email logs to confirm if the translated version is being sent.
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
Ok, let me know how it goes. As for the email notifications, I can see that emails are active for your account now, so I suppose you activated it within the top of this ticket, above the first reply?
Yes, I activated email notification in the top of the ticket 😉
I followed your instructions (points 1 - 6) and it works.
But there is a difference with the standard emails.
Those standard (i.e. 'order completed') are sent in the Order language (I think meta_key `wpml_language` in wp_postmeta ).
Instead 'Good ready' emails are sent in the User setting language.
It would be better if they worked like the standard ones.
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
Let me see with our compatibility developer if this is something that can be implemented perhaps through hooks, or if this is something coming from the WooCommerce Order Status Manager and can be only changed within their plugin.