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.

Sun Mon Tue Wed Thu Fri Sat
- 9:00 – 13:00 5:00 – 13:00 5:00 – 13:00 5:00 – 13:00 5:00 – 13:00 -
- 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 -

Supporter timezone: America/Argentina/Buenos_Aires (GMT-03:00)

This topic contains 12 replies, has 0 voices.

Last updated by Otto 20 hours, 32 minutes ago.

Assisted by: Otto.

Author Posts
February 10, 2025 at 12:32 pm #16687070

ericH-23

Background of the issue:
I am developing a site and want to change "/wp-login.php" to "/login". I also want the URL translation for German to be "/de/einloggen/". Additionally, I need the password reset functionality to work and a language filter to be included.

Symptoms:
I can't find the right documentation to achieve the URL changes and ensure the password reset works with a language filter.

Questions:
How can I change "/wp-login.php" to "/login" in the best way for using with WPML?
How do I set up URL translation for German as "/de/einloggen/"?
How can I ensure the password reset functionality works with these changes?
How do I add a language filter below the login page (I enabled it in the WPML settings but it doen't shows)?

February 11, 2025 at 12:31 pm #16691560

Otto
Supporter

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

Timezone: America/Argentina/Buenos_Aires (GMT-03:00)

Hello,

Please apologize for the delay in responding.

Many "security" plugins offer the functionality that you are looking for.

WPML is fully compatible with a bunch of those:
https://wpml.org/plugin-functionality/security/

If you will use custom code, I suggest to take a look at the advice provided in this other ticket:
https://wpml.org/forums/topic/i-am-trying-to-change-my-wp-admin-login-page-for-security-but-the-page-automatically-includes-lang/

Best Regards,
Otto

February 11, 2025 at 9:04 pm #16693686

ericH-23

Hi,
Thanks, unfortunately the security plugins don't help here Wordfence/RSP, they can make a redirect /wp-login.php to /login, but not for translations. The link to the other ticket gives me also no further info which I needed.

Enabling your setting gives /wp-login.php to /de/wp-login.php and so on, but I need the translated names like /de/einloggen.

So hopefully you have an advice how to handle this here.
Thanks, kind regards
Eric

February 11, 2025 at 9:37 pm #16693721

Otto
Supporter

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

Timezone: America/Argentina/Buenos_Aires (GMT-03:00)

Hi Eric,

Thanks for your explanation. I may still need some clarification to fully understand the setup.

In general, the plugins that hide or rename the login URL allow the user to set the slug of the new login in the admin options. And if you set "login" as the slug of the new login page, translating the option is enough to have it working in /lang/option-slug-translation.

Reference: Translate Texts that Theme and Plugins Save in wp_options

But, I am not sure this is your case. Can you please elaborate a bit more about how the /login page is set on your site?

If you are using custom code, this solution may help:
https://wpml.org/forums/topic/customizing-the-login-url-for-different-languages-in-buddyboss-theme/

Best Regards,
Otto

Please provide your debug information so I can look at some of your configurations. We have an excellent article on how to locate it here: https://wpml.org/faq/provide-debug-information-faster-support/.

February 11, 2025 at 9:42 pm #16693722

Otto
Supporter

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

Timezone: America/Argentina/Buenos_Aires (GMT-03:00)

Just to add another option.
this plugin uses a different approach, it uses shortcodes:
https://wpml.org/plugin/clean-login/

and it's fully compatible with WPML.

Best Regards,
Otto

February 11, 2025 at 10:15 pm #16693754

ericH-23

Hi,
Thanks, my problem starts with this:
After having all in place with fluentform as a login form I saw, that the loading time is too long, that is all too complex. The login itself must be quickly loaded, the first good impression for the user. So I saw, that the /wp-login.php alone have a very good loading time.
And the standard login form can be easily be secured by security plugins, for example Really Simple Privacy, with brute force and 2FA functionality, very good. So having said this now we come to the topic multilanguage, as everytime not so easy.
I tested your inbuild function and that is what I need, quick loading login form with the language in the url like /de/wp-login.php and at the bottom the language switcher, the links show also the right language version of the legal docs.
But /wp-login.php is sad.
So here I tried to work with some custom code but come quickly to redirects errors.
What I need is:
WPML inbuild function with /login (EN-standard), /de/einloggen and so on and with the standard wordpress login form with security.
Is there a way? What do you mean?
Thanks, kind regards
Eric

February 11, 2025 at 11:01 pm #16693772

Otto
Supporter

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

Timezone: America/Argentina/Buenos_Aires (GMT-03:00)

Hi Eric,

Thanks for the detailed explanation.

The plugin I've shared before (https://wpml.org/plugin/clean-login/) seems to be a good fit for your requirements.

If it's not an option, although custom code is outside the scope of our support policy, I'd like to take a look to see if I can spot why it's not working.

To do so, I created a fresh WP site with WPML already installed and configured.

You can access it by following this link:
hidden link

Once logged in you can add your custom code in the function.php file of the theme here:
hidden link

Please let me know when it's done and I'll take a look.

Best Regards,
Otto

February 11, 2025 at 11:02 pm #16693773

Otto
Supporter

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

Timezone: America/Argentina/Buenos_Aires (GMT-03:00)

If instead of custom code you rather use a plugin and it's not working as you need, feel free to install it and set it up and I can take a look there to see what's happening.

Thanks!

February 12, 2025 at 8:16 am #16694428

ericH-23

Hi,
Ok, thanks, I tried to add custom code to the sandbox and activated / deactivated the function of WPML "Login and registration pages: X Allow translating the login and registration pages, X Show Language Switcher on login and registration pages" and have no result with various solutions, so I deleted them at the end.

With this sandbox and the enclosed screenshots it can be shown, what I need, and I think, many customers (!).

/wp-login.php

Englisch: translated name - translated URL
login - /login

German: translated name - translated URL
einloggen - /de/einloggen

and so on for other second languages.

Please see the attached screenshots.

It would be an impovement of your inbuild function and would solve a long existing problem.

Thanks, kind regards
Eric

de.png
en.png
February 12, 2025 at 1:28 pm #16696672

Otto
Supporter

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

Timezone: America/Argentina/Buenos_Aires (GMT-03:00)

Hello,

Thank you.

I tested this plugin:
https://wordpress.org/plugins/wps-hide-login/

and it seems to work:
English login:
hidden link

German login:
hidden link

Once you set the login URL in the default language you can translate it in String Translation (you need to scan the plugin and add the admin texts)
https://wpml.org/documentation/getting-started-guide/string-translation/finding-strings-that-dont-appear-on-the-string-translation-page/

If you still prefer the custom code solution, please add it to the sandbox site and don't delete it so I can look. As I said, I can't promise a solution as custom code is outside our support policies, but maybe I can spot something 🙂

Best Regards,
Otto

February 13, 2025 at 1:18 pm #16702437
ericH-23

Hi,

Thanks for the proactive and excellent support!

Over the past two days, I’ve delved deeper into this topic and also explored the latest technologies for login security. I decided to change the system and added the security plugin SolidWP (which I found on your compatibility page).

I also learned that hiding /wp-login.php can have some negative effects on certain WordPress functions (as per SolidWP’s statement). I’ve accepted this now—only half satisfied—but the login features they offer are really top-notch. They include a security token against bots, which works seamlessly with your built-in translation for login and registration. So far, so good.

However, I’m now facing an issue: I have no idea how to translate the two buttons in the BuddyBoss template. All relevant translation strings appear to be correctly translated, but the buttons still display only in English.

Would you be able to check this on a staging site of mine first?

Thanks in advance!

Kind regards,
Eric

New threads created by Otto and linked to this one are listed below:

https://wpml.org/forums/topic/how-to-translate-the-two-buttons-in-the-buddyboss-template/

February 13, 2025 at 1:38 pm #16702700

ericH-23

And I have at the standard registration a wrong link, here I needed a solution to have the button with link in the current language, can you check this then also?
Thanks, kind regards
Eric

Bildschirmfoto 2025-02-13 um 14.33.28.png
February 13, 2025 at 1:43 pm #16702784

Otto
Supporter

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

Timezone: America/Argentina/Buenos_Aires (GMT-03:00)

Hello Eric,

Thanks 🙂

If I understand correctly the original issue of this ticket is not solved but you are OK with the solution you've found. Right?

If that's the case, please feel free to close it.

I created a new ticket for the other issue that you posted so we keep things tidy 🙂

I'll follow up here:
https://wpml.org/forums/topic/how-to-translate-the-two-buttons-in-the-buddyboss-template/

Best Regards,
Otto