Das Problem liegt tiefer. Contenido codiert hier IMHO einmal zuviel.
Damit russich angezeigt wird, muss Ïîðòôåëü im HTML-Code ausgegeben werde. Die Kodierung <meta http-equiv="content-type" content="text/html; charset=iso-8859-5" /> führt dann dazu, dass die Browser russisch anzeigen.
Die Angabe Ïîðòôåëü steht so auch im Namen der Kategorie (und wird - aufgrund des korrekten Encodings - im Backend russisch angezeigt). Über das Modul Hauptnavigation wird Ïîðòôåëü als echo db->f(Kategoriename); ausgegeben (vereinfacht ausgedrückt).
Leider kommt diese Ausgabe so nicht im fertigen HTML-Code an, sondern so:
Ïîðòôåëü
Und diese "Umschreibung" der Zeichen versteht kein Browser mehr als Zeichen, die für russisch verwendet werden sollen.
Wird Ïîðòôåëü direkt im Modul (zu Testzwecken) ausgegeben, (e.g. echo "Ïîðòôåëü") wird aus den Zeichen beim Abspeichern Unicode, der so auch im HTML-Code ankommt und auch nicht mehr verstanden wird (na ja, er wird als Ïîðòôåëü angezeigt, gleiches Ergebnis).
Dass das Encoding stimmt, kann man sehr schön an
http://www.walterco.de/so/cms/front_con ... angelang=4
sehen. Dort habe ich nämlich (um das Problem auszuschließen) russichen Text im Text(HTML)-Bereich eingegeben (ich weiss gar nicht, was da steht, aber halt rechts von "Homepage cyrillian version").
In HTML sieht das so aus: Çàðåãèñòðèðîâàòüñÿ - hier wird auch nicht nochmal codiert, die Zeichen kommen so im Browser an. Sie werden offensichtlich nur nochmal codiert, wenn sie im Modul ausgegeben werden.
Ich habe versucht rauszubekommen, wie man Zeichen in Unicode oder als & verwenden müsste, um mit korrektem Encoding russisch zu erhalten, habe aber nix gefunden. Ich hoffe, die Information hilft.
Gruß
HerrB