Skip to content Skip to sidebar

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.

Sun Mon Tue Wed Thu Fri Sat
- 8:00 – 12:00 8:00 – 12:00 8:00 – 12:00 8:00 – 12:00 8:00 – 12:00 -
- 12:00 – 16:00 12:00 – 16:00 12:00 – 16:00 12:00 – 16:00 12:00 – 16:00 -

Supporter timezone: Europe/Zagreb (GMT+02:00)

Tagged: 

This topic contains 14 replies, has 1 voice.

Last updated by firmaD-2 1 day, 5 hours ago.

Assisted by: Dražen.

Author Posts
August 14, 2025 at 12:29 am #17319396

firmaD-2

Background of the issue:
I am trying to improve the performance of my site, hidden link, particularly on archive pages like /inventory/. I have deactivated unnecessary translations, deleted unneeded strings from the database, and activated persistent object caching (memcached).

Symptoms:
I am experiencing performance issues on archive pages, with the site becoming almost unusable and frequently throwing 300 timeouts or 500 errors. Using Query Monitor, I see approximately 1,800 SELECT queries triggered by WPML_Element_Translation->maybe_populate_cache(), with many duplicates, especially on the /inventory/ page.

Questions:
Why is maybe_populate_cache() being called so many times in a single request?
Is there a way to batch or cache these lookups instead of repeating the same query multiple times per request?
Can you suggest WPML settings or hooks that would reduce these queries, such as disabling unnecessary translations for some post types/taxonomies or optimizing cache use?
Would WPML query caching, changing the translation mode, or disabling unused WPML features help in my case?

August 14, 2025 at 12:35 am #17319474

firmaD-2

This is the number of queries on the homepage. It got even worse: 3424

Screenshot 2025-08-14 at 02.33.44.png
August 14, 2025 at 2:45 pm #17321411

firmaD-2

FYI I've already done the following things to improve speed:
- In WPML > Settings", don't use "Translatable - use translation if available or fallback to default language" for Post types and taxonomies
- Delete untranslated strings to reduce the number of strings: https://wpml.org/documentation/getting-started-guide/string-translation/#how-to-delete-a-string
- Updated the PHP version to 8.1 (what is the recommended one to use?)
- In "WPML > Support > Troubleshooting(link)", I run "Remove ghost entries from the translation tables" and "Cleanup and optimize string tables"

August 17, 2025 at 1:25 am #17325170

Bigul
WPML Supporter since 01/2013

Languages: English (English )

Timezone: Europe/Vienna (GMT+02:00)

Hello,

Welcome to the WPML support forum. Before passing this thread to my colleague, I would like to share some suggestions and possible solutions for the issues you mentioned. Sorry for the late response becuase of the holidays.

This may be a compatibility issue. We have seen a similar report in the past. But it was caused by a conflict with a WooCommerce extension. For details, please visit this ticket: https://wpml.org/forums/topic/performance-issues/

Therefore, we have a request. To track this, please follow the steps below. It will also help us to troubleshoot the issue without affecting your live site.

- Create a staging/development site (a complete clone copy of the live site).
- Temporarily switch to a default WordPress theme (e.g., Twenty Twenty-Five).
- Deactivate all plugins that are not related to WPML.
- Check whether the issue still occurs.
- If the issue is gone, reactivate plugins in small batches (3–4 at a time) and test after each batch to find the conflicting extension.
- Switch back to your original theme.

--
Thanks!

Bigul

August 22, 2025 at 1:14 am #17339224

firmaD-2

Hi, to answer to your questions:

I copied the site in the staging environment: hidden link

I don't have Woocommerce installed, nor any extension is running on the site.

What is the point of switching to another theme (e.g., Twenty Twenty-Five) if I am obliged to use mine?

August 22, 2025 at 6:20 am #17339415

Dražen
Supporter

Languages: English (English )

Timezone: Europe/Zagreb (GMT+02:00)

Hello,

thanks.

This is part of debugging procedure to try and determine from where the issue is coming and what is causing the issue. The when we have move information we can advise further or suggest officially compatible plugin alternative you can use.

If issue still happens with only WPML plugins and WP default theme, that means issue is coming somewhere from WPML plugin and we can quickly further check and escalate.

Let me know how it goes.

Regards,
Drazen

August 26, 2025 at 2:24 pm #17348710

firmaD-2

ok, I try to do what you said and come back to you as soon as possible. Actually the only ones I can deactivate are these as all the rest is mandatory for the theme and for WMPL

Plugins-‹-Doc-Automotive-AG-—-WordPress-08-26-2025_04_18_PM.jpeg
August 26, 2025 at 3:28 pm #17348974

firmaD-2

This is the staging site: hidden link

I deactivated the following plugins and I see zero improvements:
- Content Control
- Disable Gutenberg
- Index WP MySQL For Speed
- MU: Control External Scripts (Maps & reCAPTCHA) — Hardened
- Pressidium Cookie Consent
- User Registration & Membership

hidden link

Motors should be compatible with WPML: https://wpml.org/theme/motors/

I still see 1,838 for WPML_Element_Translation->maybe_populate_cache() If I check the inventory page hidden link with Query Monitor.

There is definitely something wrong with the theme or WPML.

Do you have the credentials to access the staging?

Screenshot 2025-08-26 at 17.27.15.png
August 27, 2025 at 6:32 am #17350039

Dražen
Supporter

Languages: English (English )

Timezone: Europe/Zagreb (GMT+02:00)

Hello,

thanks for getting back.

I do not have access, please share admin and FTP access, as I will need to disable all plugins and theme to check what is causing it and from where does the issue comes.

Regards,
Drazen

August 28, 2025 at 2:28 pm #17355648

firmaD-2

I forgot to say: in the past I did tests and I noticed that when this flag is removed the site performance shows huge improvement. The point is that if I unflag it the menu does not translate at all and keep staying in English for all editions.

Screenshot 2025-08-28 at 16.26.05.png
August 28, 2025 at 2:40 pm #17355703

firmaD-2

Also it seems i am not the only one reporting this. Here a few examples:

https://wpml.org/forums/topic/wpml_element_translation-maybe_populate_cache-takes-ages-to-load-in-each-page/

https://wpml.org/forums/topic/high-number-of-duplicate-queries-from-wpml_element_translation-maybe_populate_cache-on-inventory/

https://wpml.org/forums/topic/high-number-of-duplicate-queries-from-wpml_element_translation-maybe_populate_cache-on-inventory/

https://wpml.org/forums/topic/how-can-i-improve-performance-of-a-slow-site/

August 29, 2025 at 7:16 am #17356870

Dražen
Supporter

Languages: English (English )

Timezone: Europe/Zagreb (GMT+02:00)

Hello,

thanks for getting back and providig more information.

I have updated themes, plugins including WPML to latest versions.

Issue seems to be caused by Adjust ID, because seems you are setting main menu for default language from theme options, but it is not set for other language, so WPML via Adjust ID is trying to fetch all other translated IDs and causing performance issue which is kind of expected due to SQL queries:

- https://wpml.org/faq/how-to-optimize-mysql-queries/

You can disable this option, then from WPML > String translation > Not seeing strings that you are looking for? > Admin Texts Translation > find you default language theme option that chooses menu > [theme_mods_motors][nav_menu_locations]primary and has ID of main menu 207 > Add it for translation and add for other language translated menu ID, for example french 253.

- hidden link

- hidden link

If you check now the website loads fine in 2.5s with cache disabled, so looks good.

Please check.

Regards,
Drazen

String-Translation-‹-Staging-—-WordPress-08-29-2025_09_14_AM.jpg
August 30, 2025 at 1:15 pm #17359336

firmaD-2

Hi, I managed to add the ID and solve the issue with the main menu, but I see now many other problems.

- all contact form 7 forms are broken
- How do I translate the top bar menu (Help About Us Contact Us)? how do I find the string and add the IDs?
- in the listings there are english words in all other languages (f.i conditions, vehicles available etc.).
- the search on the home shows the same translation for all fields

I can't go live in this situation

Screenshot 2025-08-30 at 15.07.51.png
Screenshot 2025-08-30 at 15.07.37.png
Screenshot 2025-08-30 at 15.06.25.png
Screenshot 2025-08-30 at 15.06.12.png
Screenshot 2025-08-30 at 15.05.30.png
Screenshot 2025-08-30 at 15.05.06.png
Screenshot 2025-08-30 at 15.05.00.png
Screenshot 2025-08-30 at 15.05.30.png
Screenshot 2025-08-30 at 15.05.06.png
Screenshot 2025-08-30 at 15.05.00.png
August 30, 2025 at 1:20 pm #17359478

firmaD-2

I managed for the top bar menu. I need to solve all other issues

Screenshot 2025-08-30 at 15.20.01.png
August 30, 2025 at 1:25 pm #17359495

firmaD-2

This string [mvl_search_results_settings]listing_directory_title_default despite it is translated it does not show the translation on the front-end correctly.

I am wondering why

Screenshot 2025-08-30 at 15.24.40.png
Screenshot 2025-08-30 at 15.24.32.png