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 » Mo 24. Nov 2008, 15:39

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: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Beitrag von xmurrix » Di 25. Nov 2008, 23:56

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_ » So 26. Apr 2009, 17:41

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