XF 2.3 2.3.3: German Umlauts (ä, ö, ü) are no longer resolved in URLs

rike-online

Member
Hello everyone,

I have now upgraded from XenForo 2.2 to 2.3 (currently to 2.3.3). Since there were major changes, I carried out an intensive check for errors (especially in my adapted design) after the upgrade. I noticed that despite activating "Use fully friendly URLs" my umlauts in the URLs are no longer resolved:

From the thread title "Wir bauen um für Euch!" will no longer be

h**ps://www.xyz.de/forum/themen/wir-bauen-um-fuer-euch.123456/

rather

h**ps://www.xyz.de/forum/themen/wir-bauen-um-fur-euch.123456/

I first looked in the settings, there used to be an option "Romanization" or something similar, but it no longer exists. Then by chance I found a thread on xenforo.com that describes the same problem for another user. The solution here is said to have been that Beta 7 (I think) no longer contained this error. I didn't even have the betas installed. Maybe the bug is now back in the release (it all already existed).

Then I found a thread in which a user with the same problem points out that PHP 8.2 has this problem. contained an error. I was using version 8.2 until yesterday and then updated to PHP 8.3... unfortunately without success.

Then I looked at my .htaccess, which I had been using for several years without any problems. I didn't notice anything here either.

Addendum: I also deactivated all addons --> no success. Another note: My forum has been running for 20 years (first vBulletin, then XenForo), we never had any problems after the initial setting for umlauts or SEO-friendly URLs...

Does anyone have an idea or have the same problem with 2.3.3?
I don't know what to do here anymore...

Thanks for your tips,
rike
 
Last edited:
Solution
Hmm, you might try replacing line 75 of src/XF/Util/Str.php with:

PHP:
                if (strpos(($rule->id ?? ''), 'de-ASCII') === 0)

This fixes the behavior in my testing, will sort that for 2.3.4.
Do you have the PHP intl extension enabled? It should provide more robust/accurate transliteration in XF 2.3+. Also, the romanization option still exists.
 
Hmm, you might try replacing line 75 of src/XF/Util/Str.php with:

PHP:
                if (strpos(($rule->id ?? ''), 'de-ASCII') === 0)

This fixes the behavior in my testing, will sort that for 2.3.4.
 
Solution
Hmm, you might try replacing line 75 of src/XF/Util/Str.php with:

PHP:
                if (strpos(($rule->id ?? ''), 'de-ASCII') === 0)

This fixes the behavior in my testing, will sort that for 2.3.4.
You might want to consider releasing a patch for 2.3.3 as this issue could affect quite a lot of URLs on german forums and thus cause a significant amount of redirects back and forth which search engines might not like that much.
 
Back
Top Bottom