This thread is resolved. Here is a description of the problem and solution.
Problem:
The client is using a custom script to update stock and prices of products via the WooCommerce API. This script updates only the main language, and while the stock and prices reflect correctly across all languages, the translations for product names and descriptions are reset to match the main language.
Solution:
1. We recommend checking if the 'save_post' hook is being executed after updates. This hook helps ensure that changes are properly synchronized across translations.
2. Verify if the WPML translation editor is disabled for the products. If it's not, any save in the default language might reset manually added translations. For more details on using different translation editors, visit Using Different Translation Editors for Different Pages.
3. If products were duplicated using WPML's 'Translation Management', check the post meta table for 'icl_duplicate_of' and delete if any entries are found. This can prevent content from syncing/duplicating incorrectly on save.
If these steps do not resolve the issue or if the solution seems outdated or irrelevant to your case, we highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If the problem persists, please open a new support ticket at WPML support forum.
This is the technical support forum for WPML - the multilingual WordPress plugin.
Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.