Skip Navigation

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.

Tagged: 

This topic contains 54 replies, has 3 voices.

Last updated by Andreas W. 1 year, 4 months ago.

Assisted by: Andreas W..

Author Posts
July 19, 2023 at 9:33 am #14064113

thomasV-73

Dear Bobby,

I made a testing site. Can you make it so that my next reply is private so that I can send you the credentials?

July 20, 2023 at 3:15 am #14069039

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-08:00)

Private reply enabled.

Is the issue reproduced on the staging site as well?

July 25, 2023 at 6:17 pm #14098595

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-08:00)

Deactivate the following:

- Query Monitor
- SSL helper plugins "Really Simple SSL"
- Caching plugins
----------------------------------------------------------------------------

#1 Test with No WPML + Add-on Plugins (products page):
----------------------------------------------------------------------------

3.81 - 4.00 load time

After doing a few reloads I do get Random spikes to 9.00 - 10.00 load time still with WPML deactivated then back down to 3-4 range.

I see you are using Astra, is there any custom work done within the theme by you or another developer in your team.

----------------------------------------------------------------------------

#2 Test with No WPML + Add-on Plugins + Standard WP Theme Twent23 (products page):
----------------------------------------------------------------------------

Same as above -- this makes no positive change -- sometimes it even brings up the load time to 13.00

----------------------------------------------------------------------------

#3 Majority of 3rd party plugins off + WPML off + Standard Theme
----------------------------------------------------------------------------

Major performance upgrade and now between 3.50 - 4.00 load times with no surges

----------------------------------------------------------------------------

#4 From Step #3 we have a range of load time at 3.50 - 4.00 that has been steady, will leave the environment as is, and simply activate WPML
----------------------------------------------------------------------------

Load times are 6.00 - 7.00

As I can reproduce this behavior now with a minimal environment I have escalated this to our second tier. Once there is news you will be updated here. Please leave the staging site up as we will be using it.

July 25, 2023 at 6:39 pm #14098685

thomasV-73

"Deactivate the following:

- Query Monitor
- SSL helper plugins "Really Simple SSL"
- Caching plugins"

On my main site I already have the Query monitor deactivated.
Also, if I deactivate the SSL plugin, won't that remove my SSL certificate???
And how can you expect me to deactivate the caching plugin?? That is essential for my site performance.

"I see you are using Astra, is there any custom work done within the theme by you or another developer in your team."

No.

As for the site speed tests you did. They may not be accurate at this moment. On my main site I am currently busy setting my translated products to drafts (after deactivating WPML). The activities I have been doing might interfere with your tests. But like I said before, on my main site, as soon as I deactivate WPML and the associated plugins, the slowness issue instantly gets resolved. And when WPML IS active, the slowest things in the backend is the orders page, when I need to navigate to an order. With WPML active, I get an average loading time of between 12 and 18 seconds. With WPML off it is about 3 seconds.

"As I can reproduce this behavior now with a minimal environment I have escalated this to our second tier. Once there is news you will be updated here. Please leave the staging site up as we will be using it."

How long until they get back to me?

July 25, 2023 at 8:41 pm #14098871

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-08:00)

For testing purposes, we will be focusing on the testing site.

WPML is adding to the performance, however, there was a significant performance issue even without WPML until I deactivated the third-party plugins.

I do not have an exact ETA, our team will review and update here once there is news

July 26, 2023 at 10:27 am #14102351

thomasV-73

Dear Bobby,

In the past 20 hours I was busy a lot setting my products to drafts in my main site. This could have interferred with the testing you did on the testing site (I'm no expert on this but I wouldn't be surprised if it did).

Like I said, on my main site now that I have WPML and all accessory plugins turned off everything in both the backend and on the front end is much quicker. If you want to see for yourself, let me know and I'll provide login credentials.

August 8, 2023 at 3:18 pm #14170495

thomasV-73

Dear Bobby,

Any status updates?

August 8, 2023 at 4:36 pm #14171281

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-08:00)

Hi there,

Please try the following query and let us know your results
[removed]

NOTE: Always have a recent and working backup before making any changes recommended by our team or a 3rd party

August 8, 2023 at 4:58 pm #14171575

thomasV-73

Dear Bobby,

Where do I paste this, what do I need to do with this?

August 9, 2023 at 8:25 am #14173401

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-08:00)

Hi there,

Apologies I misunderstood our team's feedback.

During our test, we found that specific queries originating from WooCommerce were causing this performance issue.

To increase performance please try the following:

WooCommeerce has released a beta feature called High-Performance Order Storage as they are most likely already aware of performance-related issues.

https://woocommerce.com/document/high-performance-order-storage/#section-2

Enable it as shown in the documentation and run the generation process to fill the new tables.

This will alter the query used, and replace the one used at the moment making it 100% faster (1.7secs vs 0.025secs.)

Let us know your results, please.

August 9, 2023 at 10:54 am #14174977

thomasV-73

Dear Bobby,

I went to the page for this setting in Woocommerce, but the following notification was present: "⚠ This feature should not be enabled: Essential Addons for Elementor, GTM4WP, and WooCommerce Google Ads Dynamic Remarketing plugins are active and not compatible with this."

August 10, 2023 at 12:36 am #14178873

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-08:00)

As this is a fairly newer feature It is expected that not all plugins are compatible. Please make a backup first and then enable it and test if this helps the performance issues. During our tests, it made a substantial difference. Also, WCML is currently fully compatible with it.

Let me know your results, please.

August 11, 2023 at 9:08 am #14187137

thomasV-73

Dear Bobby,

I tried that but unfortunately, they made it so that I can't check the checkbox at all.

August 14, 2023 at 4:37 pm #14199163

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-08:00)

What we found is that the call in \WC_Order_Query::get_orders called by \Automattic\WooCommerce\Internal\Admin\WcPayWelcomePage::has_wcpay method in \wp-content\plugins\woocommerce\src\Internal\Admin\WcPayWelcomePage.php
(Coming from Woocommerce's plugin)

generate's a query like the following:

SELECT   wp_posts.ID
			FROM wp_posts  INNER JOIN wp_postmeta ON ( wp_posts.ID = wp_postmeta.post_id )
			WHERE 1=1  AND ( 
  ( wp_postmeta.meta_key = '_payment_method' AND wp_postmeta.meta_value = 'woocommerce_payments' )
) AND wp_posts.post_type IN ('shop_order', 'shop_order_refund') AND ((wp_posts.post_status = 'wc-pending' OR wp_posts.post_status = 'wc-processing' OR wp_posts.post_status = 'wc-on-hold' OR wp_posts.post_status = 'wc-completed' OR wp_posts.post_status = 'wc-cancelled' OR wp_posts.post_status = 'wc-refunded' OR wp_posts.post_status = 'wc-failed' OR wp_posts.post_status = 'wc-checkout-draft'))
			GROUP BY wp_posts.ID
			ORDER BY wp_posts.post_date DESC
			LIMIT 0, 1

The query is performing slow, and seems to be slow because it asks for the postmeta table meta key value.

adding an index to the postmeta table will help if you cannot enable High-Performance Order Storage

ALTER TABLE `wp_postmeta`
ADD INDEX `meta_value` (`meta_value`(191));

Run the above query and let me know your results, please.

Note: Our team has concluded that this is not a problem in WooCommerce Multilingual, WPML or WPML String Translation, or any of our products as far as we can gather.

August 15, 2023 at 7:32 am #14201527

thomasV-73

"generate's a query like the following:"
-How do I do that?

"adding an index to the postmeta table will help if you cannot enable High-Performance Order Storage"
-Also, how do I do that?

"Run the above query and let me know your results, please."
-How do I run it?

"Note: Our team has concluded that this is not a problem in WooCommerce Multilingual, WPML or WPML String Translation, or any of our products as far as we can gather."
-So can I delete the testing site then?