Problem: You are trying to list all of your pages and posts that have not been translated from English using SQL. Solution: We recommend referring to our documentation on WPML tables and language information: WPML Tables Documentation. To find posts that have not been translated, you can use the following SQL code:
SELECT *<br />FROM wp_icl_translations<br />WHERE trid IN (SELECT trid<br />FROM wp_icl_translations GROUP BY trid having count(trid) = 1)
If you need to filter by a specific post type, such as 'Pages', modify the SQL like this:
SELECT *<br />FROM wp_icl_translations<br />WHERE trid IN (SELECT trid<br />FROM wp_icl_translations GROUP BY trid having count(trid) = 1) and element_type LIKE 'post_page'
Remember to prefix the post type with 'post_'.
If this solution does not apply to your case, or if it seems outdated, we highly recommend checking related known issues at WPML Known Issues, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If further assistance is needed, please open a new support ticket at WPML Support Forum.
Problem: The client was unable to save translations for custom post type slugs created with JetEngine when using WPML. After setting the slugs for languages and saving, the page would refresh and the fields would remain empty. Solution: We discovered that the Redis Object Cache Plugin was preventing the settings from being saved. We recommend disabling the Redis Object Cache Plugin temporarily to save the settings. We have now translated the slugs for the client, and the translations are functioning correctly. If the client continues to experience issues, we suggest disabling the Redis Object Cache Plugin momentarily to adjust the settings. Additionally, we offered to set up a test site to further investigate the issue and asked the client to provide the latest version of the JetEngine plugins for this purpose.
If this solution does not seem relevant to your situation, please open a new support ticket with us.
Problem: The client noticed an unexpected x-default tag on their pages and wondered if it was due to a recent WPML plugin version upgrade. They asked if there was a way to deactivate it through the plugin interface or if there was a hook available for controlling it programmatically. Solution: We confirmed that the x-default tag was indeed automatically added in the WPML version 4.5.0 and that there is no built-in option in the WPML interface to switch it on or off. However, we provided a custom hook that can be used to control the x-default tag. Here is the code that the client can use:
This code should be added to the theme's functions.php file or a custom plugin to remove the x-default tag.
Please note that this solution might be irrelevant if it's outdated or not applicable to your case. If the issue persists, we highly recommend checking the related known issues, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If you still need assistance, please open a new support ticket.
Solution:
Yes, in order to enable this language URL format, it's necessary that all domains have the SSL certificate. If you check the "What you will need" section on the documentation that you mentioned, you'll see that the last item is:
- You should have an SSL certificate for each site translation, or one multi-domain SSL certificate.
Problem: The client is using the Kadence theme with WooCommerce and has encountered an issue where a Kadence element that was translated into German disappeared from the product page. However, the element appears in the original language on the Italian product page, which has not been translated.
Solution: We recommend the following steps to resolve the issue:
Create the Kadence element and in the Language section, uncheck the
'Use WPML's Translation Editor'
option.
Check the
'Duplicate'
option checkbox.
Press the
'Duplicate'
button.
Edit the duplicated translation and press the
'Translate independently'
option to release the translation from being a duplication of the original element. You can find more details in our guide on manually translating a page or a post at this link.
Edit the original element again and reactivate the
'Use WPML's Translation Editor'
option to make the Advanced Translation Editor active again for translating the element.
Translate the element with the Advanced Translation Editor and complete the translation.
Repeat steps 1-6 for the product to which the element is assigned.
After following these steps, the translated element should display on the translated product page.
**** Important! Please make a full site backup (files and DB) before you proceed with those steps**** If this solution does not seem relevant to your issue, please do not hesitate to open a new support ticket with us here.
Problem: The client is unable to edit French pages on their website. Solution: We recommend translating Cornerstone content using the WPML Translation Editor. Follow these steps: 1) Always translate from the original content language to the second language using the WPML Translation Editor. 2) If a post was created in English, translate it to French using the WPML Translation Editor. Any changes in the English version will require an update to the translation. 3) If translations were created directly in Cornerstone, disable the WPML Translation Editor for this content. This option is available on the original content inside the right sidebar of the WordPress Editor.
It's crucial to disable the WPML Translation Editor for content manually translated in Cornerstone to prevent overwriting.
If you need to edit the English version manually: - Determine why manual edits are necessary. - Identify if there are issues with content translation or if translations are not appearing on the front end. - Narrow down the issue to a specific Cornerstone Widget, if possible.
If the content was manually created in Cornerstone, disable the WPML Translation Editor on the French page and try editing the English version again manually. Do not apply current translations in the WPML Translation Editor as they could overwrite your content.
Additionally, if you're working directly in Cornerstone, ensure you set the content language correctly in Cornerstone's bottom right corner. Mixing translations from Cornerstone and the WPML Translation Editor is not recommended; choose one method and stick with it.
Problem:
We are trying to set up a user role for translators on our site that gives them the permissions to edit and translate the content, but not to access plugins and theme options.
Solution:
Just add this code to the functions.php file:
add_filter('wpml_user_can_translate', function ($user_can_translate, $user){
if (in_array('editor', (array) $user->roles, true) && current_user_can('translate')) {
return true;
}
return $user_can_translate;
}, 10, 2);