Home›Support›English Support›[Resolved] In my WordPress website, three multilingual URLs were set up using WPML. However, after nine months ...
[Resolved] In my WordPress website, three multilingual URLs were set up using WPML. However, after nine months ...
This thread is resolved. Here is a description of the problem and solution.
Problem: The client reported that two of their multilingual URLs set up using WPML on their WordPress site suddenly became non-functional, displaying an 'SSL handshake failed Error code 525'. However, one URL remained operational. Despite the SSL certificates passing tests on ssllabs.com, the issue persisted. Solution: We analyzed the situation and determined that the issue was not related to WPML. The 'SSL handshake failed' error indicates that Cloudflare could not establish a secure connection with the origin server. We recommended: 1. Verifying that the origin server has a valid SSL certificate installed and is correctly configured to serve HTTPS traffic. 2. Ensuring that the SSL/TLS settings in Cloudflare match the setup on the server (e.g., Full vs. Full (Strict)). 3. Contacting Cloudflare support for further assistance to identify where the connection is failing.
If this solution does not resolve your issue or seems irrelevant due to being outdated or not applicable to your case, we highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. Additionally, if further assistance is needed, please open a new support ticket at WPML support forum.
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.
Background of the issue:
In my WordPress website, three multilingual URLs were set up using WPML. However, after nine months of normal operation, two of these URLs suddenly became non-functional, while one URL remains operational. I have attempted to restore the WordPress website to a previous node, but it didn't have any effect. When I checked the backend resolution settings of the domain name provider, there were no new changes. Additionally, if it were a configuration error, all three websites should have failed to be accessed. However, currently, one website is still accessible. Link to a page where the issue can be seen: hidden link and hidden link
Symptoms:
Currently, the errors for accessing the two URLs are both "SSL handshake failed Error code 525". However, when I used ssllabs.com to test the SSL certificates, all the websites showed that they passed the test.
Questions:
Why are two of my multilingual URLs non-functional while one remains operational?
Why does the SSL handshake fail with Error code 525 despite passing the SSL test on ssllabs.com?
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
I am asking about the WordPress credentials so I could check WPML settings directly. I marked your next reply as private so that you can safely share these.
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
I briefly switched to WPML setting of parameters and the content shows properly (see my screenshot).
And even with that setting if you visit hidden link or any other subdomain, you will get "SSL handshake failed".
The SSL handshake failed (Error 525) indicates that Cloudflare is unable to establish a secure connection with your origin server. Since this occurs across all subdomains and even with WPML disabled, it's not related to the plugin.
I recommend checking that your origin server has a valid SSL certificate installed and is correctly configured to serve HTTPS traffic. Also, please ensure that the SSL/TLS settings in Cloudflare match the setup on your server (e.g., Full vs. Full (Strict)).
If everything appears correct on your end, I suggest reaching out to Cloudflare support for further assistance—they can help identify where the connection is failing.
It is important to note that there is still a WPML multilingual address available. All multilingual urls are configured the same as the main website URL, and the SSL certificate configuration is the same on Cloudflare
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
There is simply nothing we can do about this, as this is not WPML issue. It doesn't fail at WPML level, it fails at a domain level which you can easily check by disabling it and trying to access any of these subdomains. You will get "SSL handshake failed" regardless.
That is why I suggest reaching out to Cloudflare support for further assistance—they can help identify where the connection is failing.
Is it okay if I change the pattern of the URL page to something like lang=xx? Will my translated content be saved? My current multi-language website is all translated. How do I update the translation if I change it to lang=xx in multilingual form?
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
You can switch the directory settings at any time to any of the available variants (such as different directories or parameters). This won't affect your existing translations—WPML simply updates the URLs dynamically.
However, keep in mind that if your website contains hard-coded URLs (like in buttons, menu links, or custom code), those won't automatically update. You'll need to revise them manually or consider using automated solutions like regular expressions or .htaccess rules.
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
You can manually browse through your pages, especially any custom-built ones, and take a look at the buttons, links, or menus. If you see full URLs like hidden link instead of just /en/about-us, there's a chance those are hard-coded.
Next, check your WordPress menus by going to Appearance → Menus in the dashboard. WPML handles menu links well, but it's still worth reviewing to see if any of them use full URLs (custom menu items).
If you've added custom code to your site—whether in PHP templates, JavaScript files, or elsewhere—you can search those files for your domain name (e.g., yoursite.com). That’s one of the easiest ways to spot any hard-coded links.
You can also use a plugin like Better Search Replace to search your database for instances of your domain. This can help uncover any hard-coded URLs that might be hiding in widgets, content blocks, or custom fields.
I have checked, the button address of our website points to contains hard-coded URLs (like in buttons, menu links, or custom code), how to deal with it? If the translation content is added and updated later.