Skip to content Skip to sidebar

This thread is resolved. Here is a description of the problem and solution.

Problem:
The client was unable to save the language switcher settings in the WPML -> Languages menu. Despite receiving a 'settings saved' message, the settings were not preserved upon page reload, and the language switcher did not appear in the main menu. The issue persisted even after clearing the WPML cache and was not present on a cloned site. The client discovered that disabling tagDiv plugins allowed changes to be made, but this was not a viable long-term solution.
Solution:
We identified that a file named

maintenance.php

, which was unexpectedly present in the wp-content folder, was causing the issue. This file was likely generated by a plugin not currently installed. Removing this file resolved the problem, allowing the client to modify the language switcher settings without needing to deactivate the tagDiv plugins. This solution suggests that the issue was related to a server-specific drop-in plugin that interfered with WPML and tagDiv plugins.

If this solution does not resolve your issue, or if it seems outdated, we 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. Should the problem persist, please open a new support ticket.

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 3 replies, has 0 voices.

Last updated by carinS 7 months ago.

Assisted by: Christopher Amirian.

Author Posts
October 14, 2025 at 2:18 pm #17484398

carinS

Background of the issue:
I am trying to add a language switcher to the main menu using the 'Menu language switcher' option in WPML -> Languages. I found someone who had the same problem, who got it working by clearing the WPML cache. I did that, but it didn't help.

Symptoms:
Nothing happens when I save the language switcher. I receive the message 'setting saved', but upon reloading the page, the settings are not saved, and the language switcher is not displayed on the page.

Questions:
Why is the language switcher not appearing in the main menu?
Why are the settings not being saved after I add the language switcher?

October 14, 2025 at 3:07 pm #17484624

Christopher Amirian
WPML Supporter since 07/2020

Languages: English (English )

Timezone: Asia/Yerevan (GMT+04:00)

Hi,

Please get back to us with the result of the compatibility test here and we will follow up.

Thank you.

October 14, 2025 at 3:14 pm #17484666

carinS

Hello!

In the sandbox, everything works. I have no idea why.

October 15, 2025 at 10:25 am #17486584

Christopher Amirian
WPML Supporter since 07/2020

Languages: English (English )

Timezone: Asia/Yerevan (GMT+04:00)

Hi,

Thank you for checking. This is indeed something that I can not give additional context, as even with your same settings on another server, everything works ok.

By checking your website, I saw a drop in a plugin that has notbeen moved to the other server by the Cloudways method I suggested:

hidden link

The name of the plugin is maintenance.

Maybe that has something to do with the issue?

I know you are successful in changing the settings when TagDiv is disabled. But I think you should search for a server-related difference with our server or the environment rather than the code inside TagDiv or WPML.

Thanks.

October 15, 2025 at 2:57 pm #17487482

carinS

That was it!

It's so freakin' weird. I have no idea where the file maintenance.php came from. Apparently, it's generated by WP Toolkit, but I don't have that plugin installed, and I never had. I removed the file manually from the wp-content folder. Now I can change language switcher settings without inactivating the tagDiv plugins. It's such a weird bug that needs two different normal plugins and this drop-in plugin to appear.

This is the file, in case you want to look it through and debug: hidden link

Otherwise, thank you for the help!