UTF-8 bei Mod Rewrite und Urlnamen

Gesperrt
Greg°r
Beiträge: 24
Registriert: Mi 5. Okt 2005, 07:02
Wohnort: Offenb(e)ach
Kontaktdaten:

UTF-8 bei Mod Rewrite und Urlnamen

Beitrag von Greg°r »

Hallo zusammen,

ich konnte keinen Beitrag bez. dieses Problems finden und musste selbst eine Zwischenlösung finden. Aber erstmal das Problem.

Beim Speichern von Artikeln/Kategorien werden ja auch die Urlnamen/Aliase automatisch generiert - wenn nicht händisch eingegeben. Das funktioniert mit dem Encoding ISO-8859-1, welches wahrscheinlich auch in 99% aller Fälle zum Einsatz kommt prima, jedoch nicht bei UTF-8.

Wenn für das Encoding UTF-8 benutzt wird, dann wird aus dem Artikelnamen "änderungswünsche" "nderungswnsche" erzeugt, da die in der Funktion capiStrReplaceDiacritics() angegebenen Sonderzeichen nicht erkannt und umgewandelt werden.

Es geht wie schon erwähnt um die automatische Urlnamenserzeugung aus dem Titel!

Meine Lösung befindet sich ebenfalls in includes/functions.api.string.php und sieht so aus:

Code: Alles auswählen

function capiStrReplaceDiacritics ($sString, $sourceEncoding = "ISO-8859-1", $targetEncoding = false) {
	/* If the target encoding isn't set, use source encoding */
	if ($targetEncoding == false)
	{
		$targetEncoding = $sourceEncoding;
	}
	$sString = capiStrRecodeString($sString, 'UTF-8', $sourceEncoding);

	...
capiStrRecodeString() konvertiert den UFT-8-String wieder nach ISO-8859-1 und die darunter liegende Sonderzeichenerkennung/-konvertierung funktioniert wieder.

Bessere Vorschläge, da ein Eingriff in die functions.api.string.php?

Viele Grüße
Greg°r
xmurrix
Beiträge: 3215
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Hat sich bedankt: 4 Mal
Danksagung erhalten: 16 Mal
Kontaktdaten:

Beitrag von xmurrix »

Hallo Greg°r,

deine Lösung zum Beheben des Encoding-Problems macht einen guten Eindruck.

Wie die Änderung sich aber bei einem anderen Encoding als UTF-8 verhält, kann ich jetzt nicht beurteilen, vermute aber, dass dann Strings mit ISO-8859-1 falsch kodiert werden. Eventuell müsste man zuerst eine UTF-8 Erkennung dazwischenschalten.

Gruß
xmurrix
_wiewo_
Beiträge: 358
Registriert: Mo 8. Sep 2008, 11:12

Re: UTF-8 bei Mod Rewrite und Urlnamen

Beitrag von _wiewo_ »

hab die änderungen bei mir gemacht (Contenido 4.8.12)

Nun macht der aus Produktübersicht => Produkt
vorher Produktübersicht => Produktbersicht

nun schneidet der das ganz ab =/

hilfestellung?
Gesperrt