ID #1064

Contenido und XHTML

Mit diesem kleinen Tutorial, kann man sowohl die Seiten CSS als auch XHTML valid gestallten.

Das wichtigste, um die CSS Validität zu gewährleisten ist nicht mehr Tabellen () sondern divs () zu Gestaltung einer Website zu verwenden.
Gute Informationen über CSS bekommt man unter:

http://css.talky.de/
http://css.maxdesign.com.au/
http://links.sequenz.ch/1/38/38/css-webseiten.html

und natürlich unter

http://www.w3.org/Style/CSS/

Der CSS Validator befindet sich unter http://jigsaw.w3.org/css-validator/.

Der XHTML Validator befindet sich unter http://validator.w3.org/.

Die größten Probleme , die beim Erstellen von Internetseiten mit Hilfe von Contenido entstehen können, sind die großen Tags in den Modulen CMS_HTML und CMS_HTMLHEAD. Durch das Zusammenspiel von Spaw und Internet Explorer werden im HTML Code große Tags erstellt. Dies läßt sich umgehen, wenn man z.B. andere Browser benutzt z.B. Mozilla oder Firefox. Man kann es aber auch mit folgendem Trick umgehen.

Als erstes wird eine Datei tagstolower.php erstellt mit folgendem Inhalt:

/******************************************************
* Datei: tagstolower.php in /contenido/includes/
* erstellt von Wolfgang Garella
* 2003-11-15
*
* Verfahrensweise:
* in /contenido/includes/functions_con.php
* einbinden mit include("tagstolower.php"); bei Zeile 18,
*
* Funktion ändert die groß geschriebenen Tags aus den DHTML-Editoren in
* XHTML-konforme Tags in lower case
* schreibt in Tabelle: con_content
* erster Wert öffnender Tag <: %3C...
* zweiter Wert schließender Tag >: %3C%2F...%3E
******************************************************/

function TagsToLower($value)
{
$value=preg_replace("[%3CA ]","%3Ca ",$value); //anchor
$value=preg_replace("[%3C%2FA%3E]","%3C%2Fa%3E",$value);

$value=preg_replace("[%3CB%3E]","%3Cb%3E",$value); //bold
$value=preg_replace("[%3C%2FB%3E]","%3C%2Fb%3E",$value);

$value=preg_replace("[%3CBR%3E]","%3C%2Fbr%3E",$value); //break
$value=preg_replace("[%3CFONT]","%3Cfont",$value); //font

$value=preg_replace("[%3C%2FFONT%3E]","%3C%2Ffont%3E",$value);
$value=preg_replace("[%3CHR%3E]","%3Chr%3E",$value);//horizontal line

$value=preg_replace("[%3CIMG]","%3Cimg",$value);//image
$value=preg_replace("[%3C%2FIMG%3E]","%3C%2Fimg%3E",$value);

$value=preg_replace("[%3CP]","%3Cp",$value);//paragraph
$value=preg_replace("[%3C%2FP%3E]","%3C%2Fp%3E",$value);

$value=preg_replace("[%3CUL]","%3Cul",$value);//unordered list
$value=preg_replace("[%3C%2FUL%3E]","%3C%2Ful%3E",$value);

$value=preg_replace("[%3COL]","%3Col",$value);//ordered list
$value=preg_replace("[%3C%2FOL%3E]","%3C%2Fol%3E",$value);

$value=preg_replace("[%3CLI]","%3Cli",$value);//listitems
$value=preg_replace("[%3C%2FLI%3E]","%3C%2Fli%3E",$value);

$value=preg_replace("[%3CBLOCKQUOTE]","%3Cblockquote",$value);//blockquote
$value=preg_replace("[%3C%2FBLOCKQUOTE%3E]","%3C%2Fblockquote%3E",$value);

$value=preg_replace("[%3CEM]","%3Cem",$value);//kursiv emphasized
$value=preg_replace("[%3C%2FEM%3E]","%3C%2Fem%3E",$value);

$value=preg_replace("[%3CU%3E]","%3Cu%3E",$value);//underline
$value=preg_replace("[%3C%2FU%3E]","%3C%2Fu%3E",$value);

$value=preg_replace(',<(/?)([a-zA-Z]+)([^>]+)?(/?)>,ie', '"<\1".strtolower("\2")."\3\4>"', $value);

return $value;
}
?>

Danach wird die Datei tagstolower.php in das include-Verzeichnis kopiert. Diese beinhaltet die Funktion zur Umschreibung der Tags: function TagsToLower($value){...}

Sie wird in die Datei functions.con.php eingebunden. Durch den Befehl: include("tagstolower.php");
Vor dem Schreiben in die Tabelle con_content in der Datei functions.con.php wird die Funktion aufgerufen mit $value=TagsToLower($value); bei Zeile (ca.) 518, 531 und 1985 vor dem UPDATE- und INSERT-Befehl für die Tabelle con_content.

Mehr Informationen unter: http://forum.contenido.org/viewtopic.php?t=2321&highlight=xhtml

Tags: CSS, V4.4

Verwandte Artikel:

Es ist möglich, diese FAQ zu kommentieren.

Kommentar von cyaneo:
Kann man die tagstolower.php so erweitern, dass diese zusätzlich aus<br />
<br />
<meta name=\"generator\" content=\"CMS Contenido 4.4.4\"><br />
<br />
folgendes macht:<br />
<meta name=\"generator\" content=\"CMS Contenido 4.4.4\" /><br />
<br />
also aus allen erforderlichen \">\" ein \" />\" macht?<br />
<br />
wie würde diese Datei dann aussehen?
Geschrieben am: 2038-01-19 04:14