Background of the issue:
I am curious if our settings for our site hidden link are correct. I have questions about the 'make it multilingual with ID' feature, but I can see it's not needed for some themes.
Symptoms:
Uncertainty about the necessity of the 'make it multilingual with ID' feature for certain themes.
Questions:
Are our settings for the site correct?
Is the 'make it multilingual with ID' feature necessary for our theme?
Languages: English (English )Spanish (Español )German (Deutsch )
Timezone: America/Lima (GMT-05:00)
Hello,
I could currently see that the original Shop page took 18 seconds to load.
---
At WooCommerce > WooCommerce Multilingual & Multi-Currency > Status I found the following notification:
Custom type product_variation configuration from wpml-config.xml file was altered!
The issue is that on WPML > Settings > Post Type Translation the post type "product_variation" was set to "Not translate", which is not recommended.
I have changed this setting now to "Translatable only show translated items".
If you do not change this setting you will not be able to translate the global product attributes which are created at Products > Attributes.
It looks like this change already helped to lower the page load time a little.
Next, I ran the troubleshooting options at WooCommerce > WooCommerce Multilingual & Multi-Currency > Status > Troubleshooting.
---
Also, I see that you are using "Translatable use translation if available or fallback to default language" for quite many taxonomies. Take note that this is not always suggested and if you do see a post type or taxonomy for which you see a lock on the settings, please avoid removing these locks and changing the settings.
---
Take note that the addon "WPML All Import" is no longer supported. We have a new addon called "WPML Export and Import": I deactivated this addon and I also would suggest that you go through the list of plugins and deactivate and remove any plugins that are not essentially needed for the site to operate.
---
The main reason for the issue seems to be:
Take note that the theme is triggering the following error:
Function _load_textdomain_just_in_time was called incorrectly. Indlæsning af oversættelse for woocommerce-domænet blev udløst for tidligt. Dette er normalt en indikator for, at noget kode i pluginet eller temaet kører for tidligt. Oversættelser bør indlæses ved init-handlingen eller senere. (This message was added in version 6.7.0.)
This should be reported to the Porto Support Team. It is an issue that could influence the performance of WPML String Translation.
Testing the site currently with a default theme lowers the Shops page load time significantly to about 4-5 seconds. At this point of the test the load time is almost identical even if I disable WPML and WCML. An impact of up to 1 second when WPML is enabled can be expected.
Can you tell me a bit more about where you see this error:
Function _load_textdomain_just_in_time.
And regarding this :Also, I see that you are using "Translatable use translation if available or fallback to default language" for quite many taxonomies.
I can only see 6 taxonomies with this setting.
What about all the dublicated requests that are loaded.
Languages: English (English )Spanish (Español )German (Deutsch )
Timezone: America/Lima (GMT-05:00)
Take note, that after my tests I could no longer confirm the long load time. If you can still confirm performance issues that you can relate to WPML I can offer to take another look.
About the taxonomies:
I added this comment, as out of experience I can tell that using fallback for taxonomies can cause unexpected issues and more queries for the database. I would not suggest it, but I could not confirm if this actually was the reason for performance issues on your site.
In short:
WordPress 6.7 changes the way how text domains are loaded in themes and plugins and not all authors have yet adapted their code to it. WPML and our addons are already adjusted but if this is not fixed in themes or plugins it will cause issues with WPML String Translation or similar plugins from third parties.
Languages: English (English )Spanish (Español )German (Deutsch )
Timezone: America/Lima (GMT-05:00)
You can see the error on the Shop page inside Query Monitor's "Doing it wrong" section:
Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the woo-pensopay domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. (This message was added in version 6.7.0.)