Neuigkeiten:

moziloCMS verwendet Cookies. Wenn Sie auf unserer Seite weitersurfen, stimmen Sie der Cookie-Nutzung zu Datenschutzerklärung
moziloCMS Layouts
moziloCMS Plugins

Hauptmenü

Slashes </> in Kategorie und Seitennamen

Begonnen von landlord, 12. Juni 2010, 21:47:38

« vorheriges - nächstes »

landlord

Wer seine Namen mit Slashes haben will, gibt im Adminbereich beim Anlegen von Inhalt anstelle von </> die Ersetzung <&#47;> ein.
Allerdings müssen dann in die Textdateien auch die Ersetzungen, damit das CMS die internen Verlinkungen auflösen kann:

In der index.php im admin-Ordner vor Zeile 3987 (fputs...) muss dazu

$content = str_replace("/", "&#47;", $content);
//HTTP-Links erhalten
$content = str_replace("http:&#47;&#47;", "http://", $content);

eingefügt werden. Dann steht der Verwendung von Slashes als Trennzeichen nichts mehr im Wege!

landlord

#1
Kleine Ergänzung: HTML geht dann nicht mehr! Hier muss noch ein besserer Workaround her. Für erste kann man die Ersetzung rückgängig machen, falls HTML Code eingebettet ist:

Unter oben gepostetes und vor fputs noch einfügen:


//HTML erhalten
if(substr_count($content,"[html|")!=0)
$content = str_replace("&#47;", "/", $content);

Sorry, fiel mir erst jetzt auf...

landlord

#2
So, hiermit geht auch html wieder, ich poste nochmal den ganzen code:

Vor fputs (Zeile 3980 oder so) und nach fopen (3974) in der index.php im admin bereich einfügen:

$content = str_replace("/", "&#47;", $content);
//HTTP-Links erhalten
$content = str_replace("http:&#47;&#47;", "http://", $content);
//HTML erhalten
if(substr_count($content,"[html|")!=0){
// Nach Texten in eckigen Klammern suchen
preg_match_all("/[([^[]]+)|([^[]]*)]/Um", $content, $matches);
$i = 0;
foreach ($matches[0] as $match) {
$attribute = $matches[1][$i];
$value = $matches[2][$i];
if ($attribute == "html") {
$value = str_replace("&#47;", "/", $value);
$content = str_replace($match, "[html|".$value."]", $content);
}
$i++;
}
}