Problem: You are encountering an issue where, after running a job every hour to update products and attributes in the primary language, the translated products appear without attributes despite having translated attributes created. Solution: We recommend using WPML API hooks to update the attributes of translated products programmatically after updating the attributes of default language products. Here is an example code designed for a cron job context:
add_action('wssupp_custom_cron_job', 'wssupp_custom_task_function');<br />function wssupp_custom_task_function() {<br /><br /> // update the product attributes of a specific product as a demo<br /> $product_id = 21;<br /> $attribute = 'pa_color';<br /> $term_slug = 'yellow';<br /><br /> $original_term = get_term_by( 'slug', $term_slug, $attribute );<br /> $default_language = apply_filters( 'wpml_default_language', NULL );<br /><br /> // Step 1. Programmatically set product attribute for sample default-language post<br /> wp_set_object_terms( $product_id, $term_slug, $attribute );<br /><br /> // Step 2. Get the translations of the product to other languages<br /> $product_trid = apply_filters( 'wpml_element_trid', NULL, $product_id, 'post_product' );<br /> $product_translations = apply_filters( 'wpml_get_element_translations', NULL, $product_trid, 'post_product' );<br /><br /> // Step 3. Get the term translations<br /> $term_trid = apply_filters( 'wpml_element_trid', NULL, $original_term->term_id, 'tax_'.$attribute );<br /> $term_translations = apply_filters( 'wpml_get_element_translations', NULL, $term_trid, 'tax_'.$attribute );<br /><br /> // Step 4. Iterate over the product translations and update product attribute for each<br /> foreach ($product_translations as $lang => $product_translation) {<br /><br /> if ( $lang == $default_language ) {<br /> continue; // skip default language<br /> }<br /><br /> wp_set_object_terms( $product_translation->element_id, $term_translations[$lang]->term_id, $attribute );<br /> }<br />}<br />
For further details, refer to our WPML Hooks Reference. You should adjust the code to your needs.
If this solution does not resolve your issue or seems outdated, please check related known issues at https://wpml.org/known-issues/, verify the version of the permanent fix, and confirm that you have installed the latest versions of themes and plugins. We highly recommend opening a new support ticket if needed.
Problema: Il cliente ha un form di Gravity Form complesso con centinaia di campi, molti dei quali sono ripetuti. Ha tentato di tradurre un campo, modificando il valore 'Due Date' in 'Data Scadenza', e questo ha cambiato tutti i 220 valori di 'Due Date' in 'Data Scadenza'. Ora, il cliente desidera correggere in massa il valore con 'Date d'échéance'. Soluzione: Se stai cercando di aggiornare in massa i valori nel database per i campi di Gravity Form, questa operazione richiede una programmazione personalizzata. Questo va oltre lo scopo del nostro supporto diretto. Ti consigliamo di consultare la nostra pagina dei contractor su https://wpml.org/contractors/ per assistenza professionale.
Se la soluzione proposta non risulta essere rilevante, perché potrebbe essere datata o non applicabile al tuo caso, ti suggeriamo di aprire un nuovo ticket di supporto. Ti raccomandiamo inoltre di controllare i problemi noti su https://wpml.org/known-issues/, verificare la versione della correzione permanente e confermare di avere installato le ultime versioni di temi e plugin.
Problem: You want to translate WooCommerce strings differently based on the product category in Latvian, considering gender-specific language requirements. Solution: Currently, WPML does not support automatic conditional translations based on product categories. We recommend using the WPML String Translation module to manually translate or retranslate the strings to ensure they match the gender context of the product category. For detailed guidance on using this module, please visit WPML String Translation documentation.
If this solution does not fully address your issue or seems outdated, we encourage you to open a new support ticket. We also 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. For further assistance, please visit our support forum at WPML support forum.
Problem: The client needs to change the fallback language to English for the /en part of their site, without altering the default language from Italian to English. Solution: We explained that the fallback feature in WPML is linked to the default language, and currently, there is no option available to set a fallback language to a secondary language. Additionally, implementing such a feature would require custom coding, which is beyond the scope of our support as per our support policy.
If this solution does not apply to your case, or if it seems outdated, we recommend opening a new support ticket. We also highly suggest 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. For further assistance, please visit our support forum.
Problem: The client is experiencing slow site response times of 10-12 seconds when using the WPML and String Translation plugins. The issue persists even after upgrading the server, enabling caching, and creating a staging site. Deactivating the String Translation plugin resolves the issue, indicating it as the source of the slowdown. Solution: We performed several steps to address the issue: 1. Ran the WPML troubleshooting option to "Cleanup and optimize string tables" at WPML > Support > Troubleshooting, and created the necessary custom language MO files at /wp-content/languages/wpml, which improved site performance. 2. Suggested cleaning up the database by following the steps outlined in this documentation. This includes installing a recommended plugin and running the cleanup process multiple times. 3. Provided a SQL query to delete untranslated strings from the WPML String Translation:
DELETE FROM wp_icl_strings WHERE status = 0;
4. Identified that the custom theme significantly increases load times when enabled. Recommended switching to a default theme like Twenty Twenty-Four, which reduced load times to about 2 seconds. 5. Noted an issue in the custom theme's code and provided the correct usage:
If these solutions do not resolve the issue or if they seem outdated, 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.