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
- 7:00 – 12:00 7:00 – 12:00 7:00 – 12:00 7:00 – 12:00 7:00 – 12:00 -
- 13:00 – 15:00 13:00 – 15:00 13:00 – 15:00 13:00 – 15:00 13:00 – 15:00 -

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

Tagged: 

This topic contains 16 replies, has 0 voices.

Last updated by jordanP-2 12 hours, 55 minutes ago.

Assisted by: Carlos Rojas.

Author Posts
July 1, 2025 at 8:14 pm #17190121

jordanP-2

Background of the issue:
I'm experiencing severe slowdowns in the WordPress admin area, especially when accessing pages like /wp-admin/plugins.php, /wp-admin/edit.php, and /wp-admin/post.php. After reviewing PHP logs, I found that WPML String Translation is calling maybeAdjustPathToStandardLanguageFolders() and is_file() thousands of times, causing high memory usage and long response times. When String Translation is off, everything runs much faster. I've reviewed WPML's string translation performance tips and general optimization guides, but I need direct support due to the severity of the slowdown. https://wpml.org/forums/topic/string-translation-slow-website/

Symptoms:
Severe slowdowns in the WordPress admin area related to WPML String Translation, with high memory usage and long response times.

Questions:
How can I resolve the performance issues caused by WPML String Translation?
Are there specific settings or optimizations for WPML String Translation to reduce memory usage and response times?

July 3, 2025 at 11:18 am #17196921

Carlos Rojas
WPML Supporter since 03/2017

Languages: English (English ) Spanish (Español )

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

Hello,
Thank you for contacting us

Generally, the performance issues are not caused by the WPML plugins, but by an interaction with third-party functionalities. I kindly ask you to follow these steps to isolate the cause of the problem and get more information about it:
- Create a full site backup or create a staging site with a copy of the live site (you can use WP Staging plugin for free to create the staging site)
- Update any outdated plugins or themes
- Flush any cache memory that might exist
- Deactivate all plugins, including the WPML ones
- Activate a default WordPress theme, like Twenty Twenty
- Activate the WordPress debug mode by following the steps described in this guide: https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/
- Activate the WPML plugins
- If the issue disappeared, start by activating the theme and then the rest of the plugins, one by one, until the issue appears again and you find the culprit
- Also, check if there is any error related to the performance issue in the debug.log file located within the wp-content folder

Please let me know the results of the steps described above.

Looking forward to your message.
Regards,
Carlos

July 3, 2025 at 7:07 pm #17199118

jordanP-2

Hi Carlos,

Thank you for your detailed instructions.

I followed the steps as suggested. As I mentioned previously, after deactivating the WPML String Translation plugin, the backend performance improved significantly. The issue seems to be directly linked to this specific plugin.

Additionally, my logs (including php-slow.log) consistently point to this plugin as the source of the slowdown.

Would it be possible for me to provide access to a staging/test site where the issue is replicated? This way, you can examine it more closely in a safe environment. I'm also happy to share the php-slow.log file with you if that helps with the investigation.

Please let me know how you'd prefer to proceed.

Best regards,
jordanP-2

July 4, 2025 at 8:34 am #17200349

Carlos Rojas
WPML Supporter since 03/2017

Languages: English (English ) Spanish (Español )

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

Hi jordanP-2,

Yes, creating a staging site and sharing the access credentials is a good way to isolate the cause of the issue. I have set your next message private so you can share the credentials in a secure way.

Important note: The steps you described (deactivating WPML String Translation plugin) don't rule out the possibility that the cause of the issue is in a third-party functionality that is conflicting with the WPML plugins. That is the reason I asked to follow the steps in a specific order.

July 7, 2025 at 8:56 am #17207178

Carlos Rojas
WPML Supporter since 03/2017

Languages: English (English ) Spanish (Español )

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

Hi there,
Thank you for creating the staging site and sharing the credentials.

I tried deactivating all plugins, but now the site throws a 500 error (an error that comes from the server). Please activate debug mode as described in this guide: https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/. Then, share the last fatal error that may appear in the debug debug.log file located within the wp-admin folder to know where the error is coming from.

Looking forward to your message.

July 7, 2025 at 2:05 pm #17209189

jordanP-2

Hi Carlos,
I fixed it. Try not to deactivate the Advanced Custom Fields PRO plugin; after that, all the others may remain disabled.
You can continue checking. I'm here for any questions.

July 7, 2025 at 2:21 pm #17209223

Carlos Rojas
WPML Supporter since 03/2017

Languages: English (English ) Spanish (Español )

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

Hi,

Can you fix it again? I made an honest mistake and deactivated exactly ACF Pro.

Also, I kindly ask you to deactivate all plugins, including ACF Pro -if possible- and activate a default WordPress theme. In case you can't deactivate ACF Pro, even with a default WordPress theme, then leave it active.

July 7, 2025 at 2:49 pm #17209542

jordanP-2

Hi Carlos
I've already deactivated all plugins except ACF Pro. You can continue.

July 8, 2025 at 8:30 am #17212450

Carlos Rojas
WPML Supporter since 03/2017

Languages: English (English ) Spanish (Español )

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

Hi,
Thank you very much.

I have activated a default WordPress theme, and now you can see that the performance issue has disappeared, which means that the cause of the problem is not the WPML plugins. Please start by activating the parent theme, then the child theme, and then the remaining plugins one by one, until the issue reappears and you identify the culprit.

Could you please share the results of these steps?

July 8, 2025 at 4:29 pm #17215446

jordanP-2

Hi Carlos,
I followed all the steps as you mentioned and everything was going well until I activated Advanced Custom Fields Multilingual. As soon as I activated this plugin, the speed dropped quite a bit and the backend became slow. Could you check? and in the php-slow.log file I get this:

[08-Jul-2025 16:21:55] [pool www] pid 266
script_filename = /code//index.php
[0x00007a1ea46173e0] apply_filters() /code/wp-includes/l10n.php:207
[0x00007a1ea4617330] translate() /code/wp-includes/l10n.php:307
[0x00007a1ea46172a0] __() /code/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php:2801
[0x00007a1ea4617190] get_schema_links() /code/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php:2723
[0x00007a1ea4617020] get_item_schema() /code/wp-includes/rest-api/endpoints/class-wp-rest-controller.php:388
[0x00007a1ea4616f50] get_context_param() /code/wp-includes/rest-api/endpoints/class-wp-rest-controller.php:343
[0x00007a1ea4616ec0] get_collection_params() /code/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php:2905
[0x00007a1ea4616e10] get_collection_params() /code/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php:83
[0x00007a1ea4616c00] register_routes() /code/wp-includes/rest-api.php:274
[0x00007a1ea4616af0] create_initial_rest_routes() /code/wp-includes/class-wp-hook.php:324
[0x00007a1ea4616a00] apply_filters() /code/wp-includes/class-wp-hook.php:348
[0x00007a1ea4616980] do_action() /code/wp-includes/plugin.php:517
[0x00007a1ea4616880] do_action() /code/wp-includes/rest-api.php:628
[0x00007a1ea46167e0] rest_get_server() /code/wp-includes/rest-api.php:452
[0x00007a1ea4616720] rest_api_loaded() /code/wp-includes/class-wp-hook.php:324
[0x00007a1ea4616630] apply_filters() /code/wp-includes/class-wp-hook.php:348
[0x00007a1ea46165b0] do_action() /code/wp-includes/plugin.php:565
[0x00007a1ea46164e0] do_action_ref_array() /code/wp-includes/class-wp.php:418
[0x00007a1ea4616270] parse_request() /code/wp-includes/class-wp.php:818
[0x00007a1ea46161d0] main() /code/wp-includes/functions.php:1342

[08-Jul-2025 16:21:55] [pool www] pid 268
script_filename = /code//index.php
[0x00007a1ea4617c50] WPML\FP\{closure}() /code/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/Fns.php:192
[0x00007a1ea4617bd0] array_filter() /code/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/Fns.php:192
[0x00007a1ea4617ab0] WPML\FP\{closure}() /code/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/functions.php:154
[0x00007a1ea4617a30] call_user_func_array() /code/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/functions.php:154
[0x00007a1ea4617910] WPML\FP\{closure}() /code/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/collect/src/Illuminate/Support/Traits/Macroable.php:56
[0x00007a1ea4617890] call_user_func_array() /code/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/collect/src/Illuminate/Support/Traits/Macroable.php:56
[0x00007a1ea46177b0] __callStatic() /code/wp-content/plugins/acfml/classes/Strings/Config.php:511
[0x00007a1ea4617730] getFor() /code/wp-content/plugins/acfml/classes/Strings/Config.php:518
[0x00007a1ea46176c0] getForGroup() /code/wp-content/plugins/acfml/classes/Strings/Traversable/FieldGroup.php:13
[0x00007a1ea4617650] getConfig() /code/wp-content/plugins/acfml/classes/Strings/Traversable/Entity.php:38
[0x00007a1ea4617580] traverse() /code/wp-content/plugins/acfml/classes/Strings/Translator.php:49
[0x00007a1ea4617500] translateGroup() /code/wp-content/plugins/acfml/classes/Strings/FieldHooks.php:76
[0x00007a1ea4617460] translateGroup() /code/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/Fns.php:358
[0x00007a1ea46173e0] call_user_func_array() /code/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/Fns.php:358
[0x00007a1ea4617310] WPML\FP\{closure}() /code/wp-includes/class-wp-hook.php:324
[0x00007a1ea4617220] apply_filters() /code/wp-includes/plugin.php:205
[0x00007a1ea4617130] apply_filters() /code/wp-content/plugins/advanced-custom-fields-pro/includes/post-types/class-acf-field-group.php:140
[0x00007a1ea4617080] get_post() /code/wp-content/plugins/advanced-custom-fields-pro/includes/class-acf-internal-post-type.php:360
[0x00007a1ea4616fc0] get_posts() /code/wp-content/plugins/advanced-custom-fields-pro/includes/acf-internal-post-type-functions.php:153
[0x00007a1ea4616f10] acf_get_internal_post_type_posts() /code/wp-content/plugins/advanced-custom-fields-pro/includes/acf-field-group-functions.php:118

Screenshot_4.png
Screenshot_5.png
July 9, 2025 at 9:59 am #17218127

Carlos Rojas
WPML Supporter since 03/2017

Languages: English (English ) Spanish (Español )

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

Hi,

I have re-saved the ACF groups just in case, but the performance is good on the site's backend.

July 10, 2025 at 5:53 pm #17225418

jordanP-2

Hi Carlos,
I'm letting you know that the site is still slow. It's exactly as it was when we started. As I mentioned earlier, when I activated the "Advanced Custom Fields Multilingual" plugin, it got even slower. And the php-slow.log still points to the plugin as the speed issue. Sorry for the insistence, but this is actually a backend issue because it's not possible to navigate smoothly.
[10-Jul-2025 17:50:57] [pool www] pid 208
script_filename = /code//wp-admin/edit.php
[0x00007d7e91a19450] file_exists() /code/wp-content/plugins/wpml-string-translation/classes/MO/Hooks/LoadTextDomain.php:174
[0x00007d7e91a19370] fallbackDefaultTranslations() /code/wp-content/plugins/wpml-string-translation/classes/MO/Hooks/LoadTextDomain.php:72
[0x00007d7e91a19280] overrideLoadTextDomain() /code/wp-includes/class-wp-hook.php:326
[0x00007d7e91a19190] apply_filters() /code/wp-includes/plugin.php:205
[0x00007d7e91a19070] apply_filters() /code/wp-includes/l10n.php:769
[0x00007d7e91a18f10] load_textdomain() /code/wp-content/plugins/wpml-string-translation/classes/TranslateWpmlString.php:152
[0x00007d7e91a18e70] loadTextDomain() /code/wp-content/plugins/wpml-string-translation/classes/TranslateWpmlString.php:90
[0x00007d7e91a18dc0] WPML\ST\{closure}() /code/wp-content/plugins/wpml-string-translation/classes/TranslateWpmlString.php:177
[0x00007d7e91a18d00] withMOLocale() /code/wp-content/plugins/wpml-string-translation/classes/TranslateWpmlString.php:111
[0x00007d7e91a18c00] translateByMOFile() /code/wp-content/plugins/wpml-string-translation/classes/TranslateWpmlString.php:66
[0x00007d7e91a18b30] translate() /code/wp-content/plugins/wpml-string-translation/inc/functions.php:270
[0x00007d7e91a18a50] icl_translate() /code/wp-content/plugins/wpml-string-translation/inc/package-translation/inc/wpml-package.class.php:284
[0x00007d7e91a189a0] translate_string() /code/wp-content/plugins/wpml-string-translation/inc/package-translation/inc/wpml-package-translation-helper.class.php:235
[0x00007d7e91a188a0] translate_string() /code/wp-includes/class-wp-hook.php:324
[0x00007d7e91a187b0] apply_filters() /code/wp-includes/plugin.php:205
[0x00007d7e91a186a0] apply_filters() /code/wp-content/plugins/acfml/classes/Strings/Package.php:128
[0x00007d7e91a18610] translate() /code/wp-content/plugins/acfml/classes/Strings/Transformer/Translate.php:27
[0x00007d7e91a18580] transform() /code/wp-content/plugins/acfml/classes/Strings/Traversable/Entity.php:58
[0x00007d7e91a184e0] transform() /code/wp-content/plugins/acfml/classes/Strings/Traversable/Entity.php:43
[0x00007d7e91a18410] traverse() /code/wp-content/plugins/acfml/classes/Strings/Translator.php:49

July 11, 2025 at 8:20 am #17226703

Carlos Rojas
WPML Supporter since 03/2017

Languages: English (English ) Spanish (Español )

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

Good morning Jordan,
Thank you very much for your message.

Do you authorize me to create a copy of the site to send to our 2nd-tier specialists so they can take a deeper look at this issue?

July 11, 2025 at 4:05 pm #17228881

jordanP-2

Hi Carlos,
Yes, I authorize you to create a copy of the site and share it with your second-level specialists. Thanks for the follow-up.

July 14, 2025 at 10:20 am #17233028

Carlos Rojas
WPML Supporter since 03/2017

Languages: English (English ) Spanish (Español )

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

Thank you for your authorization.

I have escalated this ticket to our 2nd tier of support, where our specialists will take a deeper look at the issue and will try to find the cause.

I will get back to you as soon as I get more information.
Thank you very much for your patience and understanding!