<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Daniel Melzer &#187; TYPOlight/Contao</title>
	<atom:link href="http://daniel.melzer.ws/tag/typolight/feed" rel="self" type="application/rss+xml" />
	<link>http://daniel.melzer.ws</link>
	<description>About life, the web and everything</description>
	<lastBuildDate>Mon, 30 Jan 2012 11:58:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>TYPOlight Tutorial #4: Artikel und Inhaltselemente</title>
		<link>http://daniel.melzer.ws/2009/06/61-typolight-tutorial-4-artikel-und-inhaltselemente.html</link>
		<comments>http://daniel.melzer.ws/2009/06/61-typolight-tutorial-4-artikel-und-inhaltselemente.html#comments</comments>
		<pubDate>Thu, 11 Jun 2009 15:28:06 +0000</pubDate>
		<dc:creator>Daniel Melzer</dc:creator>
				<category><![CDATA[TYPOlight/Contao]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://daniel.melzer.ws/2009/06/61-typolight-tutorial-4-artikel-und-inhaltselemente.html</guid>
		<description><![CDATA[Im letzten Teil hatten wir ein Template erstellt. Doch Design ist nicht alles. Uns fehlen noch die Texte. Dieser Teil zeigt, wie man Artikel anlegt. Noch als kleine Information am Rande: Die Inhalte besitzen eine gewisse Hierarchie. Innerhalb einer Seite kann es mehrere Artikel geben. Die Artikel wiederum sind in Elemente wie Überschriften, Listen, Absätze [...]]]></description>
			<content:encoded><![CDATA[<p>Im letzten Teil hatten wir ein Template erstellt. Doch Design ist nicht alles. Uns fehlen noch die Texte. Dieser Teil zeigt, wie man Artikel anlegt.</p>
<p>Noch als kleine Information am Rande: Die Inhalte besitzen eine gewisse Hierarchie. Innerhalb einer Seite kann es mehrere Artikel geben. Die Artikel wiederum sind in Elemente wie Überschriften, Listen, Absätze usw. unterteilt.</p>
<p><span id="more-61"></span></p>
<h2>Artikel anlegen</h2>
<p>Im Backend finden wir unter Inhalte den Punkt Artikel. In der Übersicht finden wir unsere Seitenstruktur wieder. Um nun einen neuen Artikel anzulegen klicken wir auf &#8220;Neuer Artikel&#8221;. Anschließend können wir durch Klick auf das Clipboard-Icon die Seite auswählen, in der der Artikel erstellt werden soll. Ich fange vorne an und wähle die Startseite. Die Reihenfolge ist jedoch beliebig <img src='http://daniel.melzer.ws/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<p>Wir geben dem Artikel einen Titel, mit dem wir diesen in der Übersicht leichter wiederfinden. Außerdem soll der Artikel in der Hauptspalte angezeigt werden. Das sollte jedoch bereits ausgewählt sein. Sofern man mehrere Artikel auf einer Seite unterbringen möchte, kann man den Artikeln einen Teaser-Text geben. Unter der Rubrik &#8220;Veröffentlichung&#8221; setzen wir die Option &#8220;Artikel veröffentlichen&#8221;, damit der Artikel auch im Frontend zu sehen ist. Wir klicken auf Speichern und bearbeiten und kommen somit in die Übersicht der Artikelelemente.</p>
<h2>Elemente</h2>
<p>Wie den Artikel legen wir von hier aus einen Text an. Als Elementtyp wählen wir zunächst eine Überschrift, geben den Text für diese ein und wählen die Ordnung der Überschrift. Mit einem Klick auf &#8220;speichern und neu&#8221; wird dieses Element gespeichert und wir können das nächste anlegen. Diesmal einen Text. Texten kann man direkt eine Überschrift geben, jedoch empfehle ich jedes Textelement separat anzulegen &#8211; auf diese Weise ist man etwas flexibler.</p>
<table border="0">
<tr>
<td><div id="attachment_103" class="wp-caption alignleft" style="width: 160px"><a href="http://daniel.melzer.ws/uploads/2009/11/list.png"><img src="http://daniel.melzer.ws/uploads/2009/11/list-150x150.png" alt="Liste" title="list" width="150" height="150" class="size-thumbnail wp-image-103" /></a><p class="wp-caption-text">Liste</p></div></td>
<td><div id="attachment_101" class="wp-caption alignleft" style="width: 160px"><a href="http://daniel.melzer.ws/uploads/2009/11/elements.png"><img src="http://daniel.melzer.ws/uploads/2009/11/elements-150x150.png" alt="Elemente" title="elements" width="150" height="150" class="size-thumbnail wp-image-101" /></a><p class="wp-caption-text">Elemente</p></div></td>
<td><div id="attachment_102" class="wp-caption alignleft" style="width: 160px"><a href="http://daniel.melzer.ws/uploads/2009/11/form.png"><img src="http://daniel.melzer.ws/uploads/2009/11/form-150x150.png" alt="Formular" title="form" width="150" height="150" class="size-thumbnail wp-image-102" /></a><p class="wp-caption-text">Formular</p></div></td>
</tr>
</table>
<p>Der WYSIWYG-Editor bietet uns weitere Möglichkeiten den Text zu formatieren. Wir klicken nachdem wir den Text eingegeben haben auf &#8220;speichern und schließen&#8221; und kommen somit wieder zu der Übersicht mit den Artikelelementen. Von hier können wir bestehende Artikelelemente bearbeiten, löschen oder verschieben.</p>
<p>Wir haben nun den ersten Artikel angelegt. Für die restlichen Seiten legen wir auf gleicher Art und Weise die Artikel an. An sich wären wir damit schon am Ende, jedoch möchte ich noch auf die einzelnen Elemente eingehen, um diesen Teil etwas abzurunden.</p>
<h2>Element-Typen</h2>
<h3>Überschrift</h3>
<p>Überschriften erklären sich von selbst. Sie dienen dazu, eine Überschrift in den Artikel einzufügen. Dieses Element haben wir vor kurzem Kennen gelernt.</p>
<h3>Text</h3>
<p>Auch dieses Element wurde oben Beschrieben. Hiermit werden formatierte Texte in den Artikel eingefügt. Die Eingabe erfolgt dabei über einen Rich-Text-Editor, der ein paar Funktionen bietet, die man aus Textverarbeitungsprogrammen kennt und bestimmte Formatierungen auf Knopfdruck  setzen.</p>
<h3>HTML</h3>
<p>Das Inhaltselement HTML dient in erster Linie dazu, Inhalte darzustellen, die sich nicht mit den anderen vorhandenen Elementen realisieren lassen. Man muss jedoch beachten, dass bestimmte HTML-Tags nicht erlaubt sind. Diese werden automatisch entfernt.</p>
<p>Welche Tags erlaubt sind, findet man in der &#8220;&#8216;system/config/config.php&#8221;&#8216;, bzw. lassen sich dort  konfigurieren.</p>
<h3>Code</h3>
<p>Code-Snippets können mit diesem Inhaltselement dargestellt werden. Eine Ausführung des Codes findet nicht statt.</p>
<h3>Bild</h3>
<p>Auch dieses Element ist selbsterklärend.</p>
<h3>Hyperlink</h3>
<p>Hyperlink-Elemente fügen Text- oder Grafik-Links ein. Links lassen sich aber auch in  Textelementen im Fließtext darstellen.</p>
<p>Für E-Mail-Adressen gibt man das &#8221;mailto://-Protokoll an. TYPOlight wird automatisch die E-Mail-Adresse verschlüsseln, damit diese nicht ohne weiteres von SPAM-Bots ausgelesen werden können.</p>
<h3>Liste</h3>
<p>Hiermit lassen sich Aufzählungen in einen Artikel einfügen. Mittels JavaScript lässt sich die Liste erweitern.</p>
<h3>Tabelle</h3>
<p>Auch unter diesem Element wird sich jeder etwas vorstellen können. Hier hilft ebenfalls ein JavaScript die Tabelle um Zeilen und Spalten zu erweitern.</p>
<h3>Download</h3>
<p>Mit diesem Element kann man einen Link zu einer Datei einfügen. Beim Klick auf den Link wird  der &#8220;Speichern unter&#8221;-Dialog geöffnet. Der integrierte Downloadmanager prüft zuvor, ob der Benutzer zum Download der Datei berechtigt ist.</p>
<h3>Bildergalerie</h3>
<p>Hiermit können eine Reihe von Bildern als Galerie dargestellt werden. Die Großansichten der Bilder werden mit dem mittlerweile bekannten Lightbox-Effekt dargestellt.</p>
<h3>Top Link</h3>
<p>Dieses Element fügt einen Link zum Seitenanfang ein und eignet sich bei recht langen Seiten.</p>
<h3>Akkordeon</h3>
<p>Dieses Inhaltselement fügt ein Feld eines mootools Akkordeons ein. Das Akkordeon-Element funktioniert wie das Text-Element, außer dass beim Akkordeon-Element eine Überschrift eingegeben werden muss, damit das Element geöffnet und geschlossen werden kann. Die Überschrift kann HTML-Code enthalten und somit auch ein Bild anstatt eines Textes sein.</p>
<h3>Inhalt</h3>
<p>Dieses Element dient dazu, ein bereits vorhandenes Inhaltselement noch einmal anzuzeigen. Auf diese Weise muss man Änderungen an einem mehrmals vorkommenden Inhaltselement nur einmal vornehmen. Die Frontend-Ausgabe ist identisch mit der Frontend-Ausgabe des original Inhaltselements. Eigenschaften wie Ausrichtung, Abstände und Stylesheet-ID können bei Bedarf überschrieben werden.</p>
<h3>Formular</h3>
<p>Dieses Element dient dazu, ein Formular in den Artikel einzufügen. Zu Formularen gibt es mehr im nächsten Tutorial.</p>
<h3>Modul</h3>
<p>Mit diesem Element lassen sich Module einbinden.</p>
<h2>Schlußwort</h2>
<p>Nun sollte es ein leichtes sein unseren Webauftritt mit Inhalten zu füllen. Im nächsten Teil werden wir uns den Formularen widmen und ein Kontaktformular erstellen.</p>
]]></content:encoded>
			<wfw:commentRss>http://daniel.melzer.ws/2009/06/61-typolight-tutorial-4-artikel-und-inhaltselemente.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>TYPOlight Tutorial #3: Templates</title>
		<link>http://daniel.melzer.ws/2009/05/60-typolight-tutorial-3-templates.html</link>
		<comments>http://daniel.melzer.ws/2009/05/60-typolight-tutorial-3-templates.html#comments</comments>
		<pubDate>Sat, 23 May 2009 21:16:06 +0000</pubDate>
		<dc:creator>Daniel Melzer</dc:creator>
				<category><![CDATA[TYPOlight/Contao]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[templates]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://daniel.melzer.ws/2009/05/60-typolight-tutorial-3-templates.html</guid>
		<description><![CDATA[In Teil 3 der Tutorial-Serie gehe ich auf das Thema Templateerstellung ein. Dieses Tutorial basiert auf der neuen Version 2.7. Für das Beispiel habe ich mir &#8220;BlueBusiness01&#8221; von Christian Pansch bei openwebdesign.org runter geladen. Aber schauen wir uns erst einmal kurz das Templatesystem von TYPOlight an. Das Templatesystem TYPOlight hat einige Basis- bzw. Systemtemplates. Sofern [...]]]></description>
			<content:encoded><![CDATA[<p>In Teil 3 der Tutorial-Serie gehe ich auf das Thema Templateerstellung ein. <strong>Dieses Tutorial basiert auf der neuen Version 2.7.</strong> Für das Beispiel habe ich mir &#8220;<a href="http://www.openwebdesign.org/viewdesign.phtml?id=4106">BlueBusiness01</a>&#8221; von <a href="http://www.christian-pansch.de">Christian Pansch</a> bei <a href="http://www.openwebdesign.org">openwebdesign.org</a> runter geladen.</p>
<p>Aber schauen wir uns erst einmal kurz das Templatesystem von TYPOlight an.</p>
<p><span id="more-60"></span></p>
<h2>Das Templatesystem</h2>
<p>TYPOlight hat einige Basis- bzw. Systemtemplates. Sofern kein eigenes Template definiert wurde, wird das entsprechende Systemtemplate – sofern vorhanden – verwendet. Unsere eigenen Templates liegen im gleichnamigen Verzeichnis der Installation.</p>
<p>Sofern nicht ein spezielles Template überschrieben werden soll, ist die Benennung im Grunde frei. Jedoch sollten Frontend-Templates mit einem fe_ beginnen, z.B. fe_startpage.tpl. In der Regel gibt es ein Frontend-Template, welches die Struktur der Seite beinhaltet. Soll die Startseite einen anderen Aufbau als die Folgeseiten haben, werden hierfür getrennte Templates erstellt.</p>
<p>Unter Umständen können spezielle Templates überschrieben werden. Beispielsweise das Template fe_news.tpl für einen Artikel aus einem Newsarchiv. Solche Templates beinhalten nicht die gesamte Seitenstruktur, sondern nur die Struktur des entsprechenden Elements und werden in das Basistemplate integriert.</p>
<h2>Das Template</h2>
<p>Beginnen wir mit dem Erstellen des Templates. Zunächst schauen wir uns das Layout an. Es besteht im wesentlichen aus dem Header, einer Hauptspalte auf der linken Seite, eine Seitenspalte rechts und dem Footer. Genau diese Bereiche – Header, Main, Right und Footer – stehen uns bereits zur Verfügung.</p>
<p>Wir erstellen nun eine Kopie der index.html und speichern diese im Verzeichnis /templates unter dem Namen fe_standard.tpl ab. Im Verzeichnis tl_files erstellen wir ein neues Verzeichnis bluebusiness. Hierein kopieren wir die Grafiken und Stylesheets des Layouts. Das Verzeichnis tl_files ist im Backend über die Dateiverwaltung pflegbar, weshalb es Sinn ergibt hier die im Template verwendeten Dateien unterzubringen. So kann später bequem eine Datei, z.B. die Headergrafik,  ausgetauscht werden.</p>
<p>Nun bearbeiten wir die fe_standard.tpl und passen zunächst den head-Bereich an. Hier erstmal der Original Quelltext:</p>
<pre class="brush:html">
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
&lt;html xmlns="http://www.w3.org/1999/xhtml">
    &lt;head>
        &lt;title>BlueBusiness by christian-pansch.de&lt;/title>
        &lt;meta http-equiv="Content-Language" content="English" />
        &lt;meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
        &lt;meta name="author" content="Christian Pansch (www.christian-pansch.de)" />
        &lt;meta name="description" content="Design by christian-pansch.de" />
        &lt;meta name="keywords" content="xhtml,css,template,webdesign" />
        &lt;meta name="Robots" content="index,follow" />
        &lt;link href="bluebusiness.css" rel="stylesheet" type="text/css" />
   &lt;/head>
</pre>
<p>Folgendens werden wir anpassen:</p>
<ul>
<li>Hinzufügen des base-Tags, da dieser von TYPOlight benötigt wird,</li>
<li>den Titel der Seite mit Platzhaltern ersetzen,</li>
<li>den Pfad zur CSS-Datei korrigieren und</li>
<li>Platzhalter für Sprache und Zeichensatz einfügen.</li>
</ul>
<p>Nachfolgend der angepasste Quelltext.</p>
<pre class="brush:php">
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
&lt;html xmlns="http://www.w3.org/1999/xhtml" lang="&lt;?php echo $this->language; ?>" xml:lang="&lt;?php echo $this->language; ?>">
    &lt;head>
        &lt;base href="&lt;?php echo $this->base; ?>">&lt;/base>
        &lt;title>&lt;?php echo $this->mainTitle; ?> | &lt;?php echo $this->pageTitle; ?>&lt;/title>
        &lt;meta http-equiv="content-type" content="text/html; charset=&lt;?php echo $this->charset; ?>" />
        &lt;meta name="author" content="Christian Pansch (www.christian-pansch.de)" />
        &lt;meta name="description" content="&lt;?php echo $this->description; ?>" />
        &lt;meta name="keywords" content="&lt;?php echo $this->keywords; ?>" />
        &lt;meta name="Robots" content="index,follow" />
        &lt;link href="tl_files/bluebusiness/bluebusiness.css" rel="stylesheet" type="text/css" />
   &lt;/head>
</pre>
<p>Folgende Platzhalter wurden benutzt:</p>
<ul>
<li>$this->language<br/>Dies wird durch die Sprache einer Seite ersetzt, z.B. de für Deutsch oder en für Englisch.</li>
<li>$this->base<br/>Dieser Platzhalter wird mit der BASE-URL ersetzt, in unserem Beispiel http://example.org/</li>
<li>$this->mainTitle<br/>Dieser Platzhalter steht für den allgemeinen Seitentitel, der bei dem Startpunkt für unsere Website vergeben wurde.</li>
<li>$this->pageTitle<br/>Titel der aktuellen Seite, z.B. Startseite.</li>
<li>$this->charset<br/>Fügt den zu verwendenden Zeichensatz in das Template ein.</li>
<li>$this->description und $this->keywords<br/>Diese beiden Platzhalter sind für die Meta-Beschreibung und Keywords. Sie dienen vor allem der Suchmaschinenoptimierung.</li>
</ul>
<p>Wer den vollen Umfang von TYPOlight wie Lightbox oder Tablesort nutzen will, fügt noch die folgenden Zeilen in den head-Bereich ein:</p>
<pre class="brush:php">
&lt;?php echo $this->robots; ?>
&lt;script type="text/javascript" src="plugins/tablesort/js/tablesort.js">&lt;/script>
&lt;script type="text/javascript" src="plugins/mootools/mootools.js">&lt;/script>
&lt;script type="text/javascript" src="plugins/slimbox/js/slimbox.js">&lt;/script>
&lt;script type="text/javascript" src="plugins/ufo/ufo.js">&lt;/script>
&lt;link rel="stylesheet" href="plugins/slimbox/css/slimbox.css" type="text/css" media="screen" />
&lt;link rel="stylesheet" href="plugins/tablesort/css/tablesort.css" type="text/css" media="screen" />
&lt;?php echo $this->head; ?>
</pre>
<p>Als nächstes kommt der body-Bereich. Als erstes ersetzen wird den body-Tag mit dieser Zeile:</p>
<pre class="brush:php">
&lt;body &lt;?php echo ($this->class ? ' class="' . $this->class . '"' : '') . ($this->onload ? ' onload="' . $this->onload . '"' : ''); ?>>
</pre>
<p>Nun können wir dem Body eine eigene CSS-Klasse zuweisen und zwar für jede einzelne Seite. Nun werden wir wieder ein paar Platzhalter im Template platzieren. Im div-Tag mit der ID container-header tragen wir unseren Slogan ein und ersetzen den Seitennamen mit $this->mainTitle. Das ganse sieht dann so aus:</p>
<pre class="brush:php">
&lt;div id="container-header">
    &lt;div id="container-name">&lt;?php echo $this->mainTitle; ?>&lt;/div>
    &lt;div id="container-slogan">&lt;span>&quot;&lt;/span>Mein Slogan&lt;span>&quot;&lt;div>
&lt;/div>
</pre>
<p>Beim nächsten div wird, mit Ausnahme der Grafik, der gesamte Inhalt ersetzt. Der folgende Quelltext-Part</p>
<pre class="brush:html">
&lt;div id="container-eyecatcher">
    &lt;div id="container-navigation">
        &lt;ul id="navigation">
            &lt;li>&lt;a href="#">home&lt;>&lt;/li>
            &lt;li>&lt;a href="#">products&lt;/a>&lt;/li>
            &lt;li>&lt;a href="#">services&lt;>&lt;/li>
            &lt;li>&lt;a href="#">about&lt;/a>&lt;/li>
            &lt;li>&lt;a href="#">contact&lt;/a>&lt;/li>
            &lt;li>&lt;a href="#">sitemap&lt;/a>&lt;/li>
        &lt;/ul>
    &lt;/div>
    &lt;img src="images/business_eyecatcher.jpg" alt="Business picture" />
&lt;/div>
</pre>
<p>wird wie folgt abgeändert:</p>
<pre class="brush:php">
&lt;div id=“container-eyecatcher“>
    &lt;?php echo $this->header; ?>
    &lt;img src="tl_files/bluebusiness/images/business_eyecatcher.jpg" alt="Business picture" />
&lt;/div>
</pre>
<p>Auf gleiche Weise verfahren wir beim Inhaltsbereich. Im div mit der ID content-content gibt zwei divs – content und border. Der Inhalt von content wird mit $this->main, der von border mit $this->right ersetzt. Zum Schluss der Footer. Hier ersteze wir den Inhalt von footer-copyright mit $this->footer. Das gesamte Template sieht nun so aus:</p>
<pre class="brush:php">
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
&lt;html xmlns="http://www.w3.org/1999/xhtml" lang=“&lt;?php echo $this->language; ?>“ xml:lang="&lt;?php echo $this->language; ?>">
    &lt;head>
        &lt;base href="&lt;?php echo $this->base; ?>">&lt;/base>
        &lt;title>&lt;?php echo $this->mainTitle; ?> | &lt;?php echo $this->pageTitle; ?>&lt;/title>
        &lt;meta http-equiv="content-type" content="text/html; charset=&lt;?php echo $this->charset; ?>" />
        &lt;meta name="author" content="Christian Pansch (www.christian-pansch.de)" />
        &lt;meta name="description" content="&lt;?php echo $this->description; ?>" />
        &lt;meta name="keywords" content="&lt;?php echo $this->keywords; ?>" />
        &lt;meta name="Robots" content="index,follow" />
        &lt;link href="tl_files/bluebusiness/bluebusiness.css" rel="stylesheet" type="text/css" />
    &lt;/head> 

    &lt;body &lt;?php echo ($this->class ? ' class="' . $this->class . '"' : '') . ($this->onload ? ' onload="' . $this->onload . '"' : ''); ?>>
        &lt;div id="container">
            &lt;div id="container-header">
                &lt;div id="container-name">&lt;?php echo $this->mainTitle; ?>&lt;/div>
                &lt;div id="container-slogan">&lt;span>&quot;&lt;/span>Mein Slogan&lt;span>&quot;&lt;/span>&lt;/div>
            &lt;/div>
            &lt;div id="container-eyecatcher">
                &lt;?php echo $this->header; ?>
            &lt;/div> 

            &lt;div id="container-content">
                &lt;div id="content">
                    &lt;?php echo $this->main; ?>
                &lt;/div>&lt;!-- CONTENT END --> 

                &lt;div id="border">
                    &lt;?php echo $this->right; ?>
                &lt;/div>
            &lt;/div> 

            &lt;div id="container-footer">
                &lt;div id="footer">
                    &lt;div id="footer-copyright">
                        &copy; 2007 yourbusiness.com - all rights reserved. &lt;a href="#">Terms of use&lt;/a>&lt;br />
                        &lt;!--This theme is free for distriubtion,  so long as  link to openwebdesing.org and dubaiapartments.biz  stay on the theme-->
                        Courtesy &lt;a href="http://www.openwebdesign.org" target="_blank">Open Web Design&lt;/a>
                        &lt;a href="http://www.dubaiapartments.biz" target="_blank">&lt;img src="tl_files/bluebusiness/spacer.gif" width="5" height="5" border="0"/>&lt;/a>
                        Thanks to &lt;a href="http://www.dubaiapartments.biz/" target="_blank">Dubai Hotels&lt;/a>
                    &lt;/div>
                    &lt;div id="footer-meta">
                        &lt;a href="http://validator.w3.org/check?uri=referer">XHTML&lt;/a> |
                        &lt;a href="http://jigsaw.w3.org/css-validator/check/referer">CSS&lt;/a> |
                        &lt;a href="http://www.christian-pansch.de" title="Webdesign Bremen">Design by christian-pansch.de&lt;/a>
                    &lt;/div>
                &lt;/div>
            &lt;/div>
        &lt;/div>&lt;!-- ENDE container -->
    &lt;/body>
&lt;/html>
</pre>
<p>Damit hätten wir das Template an sich erstellt. Fertig sind wir jedoch noch nicht. Es müssen nun noch im Backend Module und das Seitenlayout erstellt bzw. festgelegt werden.</p>
<h2>Module</h2>
<p>Insgesamt müssen 2 Module angelegt werden – Hauptnavigation und Adressblock. Das Modul für Artikel, also dem eigentlichen Content, steht bereits standardmäßig zu Verfügung. Nach aufrufen des Moduls &#8220;Module&#8221; klicken wir auf &#8220;Neues Modul&#8221;. Hier geben wir als Titel &#8220;Hauptnavigation&#8221; ein. Das Feld für die Überschrift bleibt leer und als Modultyp wählen wir &#8220;Navigationsmenü&#8221;. Unter dem Formular-Bereich &#8220;Experten-Einstellungen&#8221; geben wir noch die ID &#8220;container-navigation&#8221; ein. Klick auf &#8220;Speichern und neu&#8221; und wir können das zweite Modul anlegen. Als Titel tragen wir den Wert Adressblock ein und wählen unter Modultyp &#8220;Eigener HTML-Code&#8221; aus. Nach dem speichern bekommen wir ein Textfeld, in dem wir unseren HTML-Code einfügen können – hier als Beispiel:</p>
<pre class="brush:html">
&lt;h4>Unsere Adresse&lt;/h4>
&lt;address>
Example&lt;br/>
Musterweg 2&lt;br/>
12345 Musterstadt
&lt;/address>
&lt;address>
Telefon: +49 123 456789&lt;br/>
Fax: +49 123 456790
&lt;br/>&lt;br/>
E-Mail: &lt;a href="mailto:info@example.com">info@example.com&lt;/a>
&lt;/address>
</pre>
<p>Mit diesem Modul steht nun auf jeder Seite die Kontaktadresse. Nur noch speichern und wir haben erstmal unsere Module.</p>
<h2>Seitenlayout</h2>
<p>Als nächstes legen wir ein Seitenlayout an. Dazu klicken wir – wie gewohnt – unter &#8220;Seitenlayouts&#8221; auf &#8220;Neues Layout&#8221;. Als Titel geben wir &#8220;Standard&#8221; ein und markieren die darunter liegende Checkbox an. Durch diese Checkbox wird immer dieses Layout gewählt, wenn nicht ein anderes explizit beim Anlegen einer Seite ausgewählt wird.</p>
<p>Unter dem Abschnitt &#8220;Spaltenkonfiguration&#8221; wählen wir die dritte Option (Hauptspalte und rechte Spalte). Das Feld &#8220;Breite der rechten Spalte&#8221; belassen wir leer. Dies wird über die Stylesheet-Datei des Templates gesteuert.</p>
<p>Im Bereich &#8220;Frontend-Module&#8221; weisen wir nun die notwendigen Module dem Layout und ihrer Position im Layout zu. Als erstes wählen wir das Modul &#8220;Artikel&#8221; sowie die Spalte &#8220;Hauptspalte&#8221; und klicken auf das Plus-Icon. Diesen Schritt wiederholen wir mit den Modulen &#8220;Hauptnavigation&#8221; in der &#8220;Kopfzeile&#8221; und &#8220;Adressblock&#8221; in &#8220;Rechte Spalte&#8221;. Beim letzten Modul, das wir dem Layout zuweisen, brauchen wir nicht mehr auf das Plus-Icon klicken.</p>
<p>Unter &#8220;Experten-Einstellungen&#8221; versichern wir uns, das als Seitentemplate &#8220;fe_standard.tpl&#8221; ausgewählt ist. Hier können bei Bedarf noch die ID für Google Analytics, onload-Handler und zusätzliche Tags, die im head-Bereich des Templates stehen sollen, eingegeben werden. Mit &#8220;Speichern und schließen&#8221; schließen wir die Erstellung des Layouts ab.</p>
<p>Wer sich jetzt das Frontend ansieht, sollte schon das Template sehen. Wenn nicht sollte man prüfen ob die Rechte für das Template-File korrekt gesetzt sind. Weiter Hinweise erhält man, wenn in den Systemeinstellungen die Anzeige von Fehlermeldungen aktiviert wird.</p>
<h2>Stylesheet-Datei</h2>
<p>Als letzter Schritt müssen noch Anpassungen an den Styles vorgenommen werden. Zunächst ändern wir die Zeile</p>
<pre class="brush:css">ul#navigation</pre>
<p>in</p>
<pre class="brush:css">#container-navigation ul</pre>
<p>und alle Zeilen die mit #navigation beginnen in #container-navigation.</p>
<p>Ein erneuter Blick auf das Frontend lässt erkennen, dass das Template dem gewünschten Ergebnis zwar schon näher kommt, aber ein paar Kleinigkeiten angepasst werden müssen. Der aktive Navigationspunkt stimmt noch nicht ganz. Die Zeile #container-navigation li a wir wie folgt erweitert:</p>
<pre class="brush:css">#container-navigation li a, #container-navigation li span</pre>
<p>Dadurch reiht sich der aktive Menüpunkt optisch zu den anderen ein. Jetzt wird noch</p>
<pre class="brush:css">#border p</pre>
<p>in</p>
<pre class="brush:css">#border p, #border address</pre>
<p>geändert und folgende Angabe hinzugefügt:</p>
<pre class="brush:css">font-style: normal;</pre>
<p>Damit wird dann auch die Adresse in der rechten Spalte nicht mehr kursiv dargestellt.</p>
<h2>Schlusswort</h2>
<p>Unsere TYPOlight-Installation hat nun ein Template. Natürlich sieht die Seite noch sehr leer aus. Das wird sich mit dem  Anlegen von Artikeln jedoch ändern <img src='http://daniel.melzer.ws/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . Damit beschäftigen wir uns allerdings erst im nächsten Teil.</p>
]]></content:encoded>
			<wfw:commentRss>http://daniel.melzer.ws/2009/05/60-typolight-tutorial-3-templates.html/feed</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>TYPOlight Tutorials: Teil 3 verschiebt sich</title>
		<link>http://daniel.melzer.ws/2009/04/57-typolight-tutorials-teil-3-verschiebt-sich.html</link>
		<comments>http://daniel.melzer.ws/2009/04/57-typolight-tutorials-teil-3-verschiebt-sich.html#comments</comments>
		<pubDate>Wed, 22 Apr 2009 08:42:25 +0000</pubDate>
		<dc:creator>Daniel Melzer</dc:creator>
				<category><![CDATA[TYPOlight/Contao]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://daniel.melzer.ws/2009/04/57-typolight-tutorials-teil-3-verschiebt-sich.html</guid>
		<description><![CDATA[Der dritte Teil der Serie, in dem es um die Erstellung von Templates geht, wird sich verschieben. Wer die News auf typolight.org mitverfolgt weiß, dass ein weiterer Release Candidate von Version 2.7 vor der Tür steht. Mit dieser Version wird es eine Änderungen an den Templates geben. Welche genau das sind kann man im Forum [...]]]></description>
			<content:encoded><![CDATA[<p>Der dritte Teil der Serie, in dem es um die Erstellung von Templates geht, wird sich verschieben. Wer die News auf <a href="http://typolight.org">typolight.org</a> mitverfolgt weiß, dass ein weiterer Release Candidate von Version 2.7 vor der Tür steht. Mit dieser Version wird es eine Änderungen an den Templates geben. Welche genau das sind kann man im <a href="http://typolight.org/board/topic/10681.html">Forum</a> nachlesen.</p>
<p>Ich möchte nur ungern ein Tutorial schreiben, welches unter Umständen schon nach wenigen Wochen nicht mehr gültig ist. Ich bitte deshalb um Verständnis für die Unterbrechung der Serie. Sobald TYPOlight 2.7 in einer Version für den Produktivbetrieb vorliegt geht es weiter.</p>
]]></content:encoded>
			<wfw:commentRss>http://daniel.melzer.ws/2009/04/57-typolight-tutorials-teil-3-verschiebt-sich.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>TYPOlight Tutorial #2: Einstellungen und Seitenstruktur</title>
		<link>http://daniel.melzer.ws/2009/02/55-typolight-tutorial-2-einstellungen-und-seitenstruktur.html</link>
		<comments>http://daniel.melzer.ws/2009/02/55-typolight-tutorial-2-einstellungen-und-seitenstruktur.html#comments</comments>
		<pubDate>Mon, 23 Feb 2009 14:30:43 +0000</pubDate>
		<dc:creator>Daniel Melzer</dc:creator>
				<category><![CDATA[TYPOlight/Contao]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://daniel.melzer.ws/2009/02/55-typolight-tutorial-2-einstellungen-und-seitenstruktur.html</guid>
		<description><![CDATA[Im letzten Artikel haben wir TYPOlight installiert. Würden wir nun das Frontend aufrufen, würde die Meldung &#8220;No pages found&#8221; angezeigt werden. Dies ist eigentlich auch zu erwarten, da wir bisher keine Seiten angelegt und veröffentlicht haben. In diesem Teil der Serie zeige ich, wie man die Struktur der Website anlegt. Außerdem gehe ich noch kurz [...]]]></description>
			<content:encoded><![CDATA[<p>Im letzten Artikel haben wir TYPOlight installiert. Würden wir nun das Frontend aufrufen, würde die Meldung &#8220;No pages found&#8221; angezeigt werden. Dies ist eigentlich auch zu erwarten, da wir bisher keine Seiten angelegt und veröffentlicht haben.</p>
<p>In diesem Teil der Serie zeige ich, wie man die Struktur der Website anlegt. Außerdem gehe ich noch kurz auf die Einstellungen ein.</p>
<p><span id="more-55"></span></p>
<h2>Einstellungen</h2>
<p>Zuerst loggen wir uns ins Backend ein, dass sich unter http://example.org/typolight/ befindet. Unter dem Punkt System finden wir die Einstellungen. Die einzelnen Optionen sind alle gut beschrieben, auf ein paar gehe ich dennoch ein.</p>
<p>Zum einen ändern wir hier den Titel der Website. Des weiteren können wir das Format festlegen, wie Datumsangaben erscheinen sollen. Ich belasse die Einstellungen auf dem internationalen Format Jahr-Monat-Tag und ändere lediglich die Zeitzone auf Europa/Berlin.</p>
<p>Wer seine TYPOlight-Installation in einem Unterverzeichnis erstellt hat &ndash; zum Beispiel example.org/cms/ &ndash; trägt unter &#8220;Relativer Pfad zum TYPOlight-Verzeichnis&#8221; den Wert /cms ein. Standardmäßig bietet uns das CMS fünf Layoutbereiche:</p>
<ul>
<li>header</li>
<li>left</li>
<li>main</li>
<li>right und</li>
<li>footer</li>
</ul>
<p>Wer nun weitere Layoutbereiche benötigt kann unter &#8220;Eigene Layoutbereiche&#8221; seine gewünschten, mit Kommata separierten, Bereiche in das Feld einträgt.</p>
<p>Zu guter Letzt wählen wir noch die Option &#8220;URLs umschreiben&#8221;, dazu muss jedoch mod_rewrite auf dem Server zur Verfügung stehen. Mittlerweile wird <a href="http://tcpdf.sourceforge.net/">TCPDF</a> für den PDF-Druck verwendet. Wer lieber wieder <a href="http://www.digitaljunkies.ca/dompdf/">DOMPDF</a> verwenden will, kann dies ebenfalls hier einstellen. Mit &#8220;Speichern und schließen&#8221; werden unsere Einstellungen übernommen und wir landen wieder auf der Startseite des Backends.</p>
<h2>Seitenstruktur</h2>
<p>Als nächstes wollen wir unsere Seitenstruktur anlegen. Das geschieht unter Layout &rarr; Seitenstruktur. Wir klicken auf &#8220;Neue Seite&#8221; und bekommen einen Eintrag mit dem Titel unserer Website zu sehen. Dies ist noch keine Seite, sondern der Punkt an, oder besser gesagt in dem wir die Seite anlegen können. Wir klicken nun also auf das leicht blickende Clipboard-Icon und kommen zu dem Formular, mit dem wir die Seite anlegen.</p>
<p>Wir vergeben einen beliebigen Seitenname und wählen als Seitentyp den Eintrag &#8220;Startpunkt einer neuen Website&#8221;. Alle anderen Felder belassen wir wie sie sind und wählen nur noch die Option &#8220;Veröffentlicht&#8221;. Anschließend klicken wir auf &#8220;speichern und schließen&#8221;.</p>
<table border="0">
<tr>
<td>
<div id="attachment_99" class="wp-caption alignnone" style="width: 160px"><a href="http://daniel.melzer.ws/uploads/2009/11/Startpunkt.jpg"><img src="http://daniel.melzer.ws/uploads/2009/11/Startpunkt-150x150.jpg" alt="Startpunkt" title="Startpunkt" width="150" height="150" class="size-thumbnail wp-image-99" /></a><p class="wp-caption-text">Startpunkt</p></div></td>
<td>
<div id="attachment_98" class="wp-caption alignnone" style="width: 160px"><a href="http://daniel.melzer.ws/uploads/2009/11/Seite.jpg"><img src="http://daniel.melzer.ws/uploads/2009/11/Seite-150x150.jpg" alt="Seite" title="Seite" width="150" height="150" class="size-thumbnail wp-image-98" /></a><p class="wp-caption-text">Seite</p></div></td>
<td>
<div id="attachment_100" class="wp-caption alignnone" style="width: 160px"><a href="http://daniel.melzer.ws/uploads/2009/11/Struktur.jpg"><img src="http://daniel.melzer.ws/uploads/2009/11/Struktur-150x150.jpg" alt="Struktur" title="Struktur" width="150" height="150" class="size-thumbnail wp-image-100" /></a><p class="wp-caption-text">Struktur</p></div></td>
</tr>
</table>
<p>Als nächstes klicken wir wieder auf &#8220;Neue Seite&#8221; und klicken diesmal auf das Clipboard-Icon mit dem Pfeil nach rechts. Diesmal lassen wir die Einstellungen für den Seitentyp auf &#8220;Reguläre Seite&#8221;. Als Seitenname geben wir Startseite, als Alias index ein. Auch im Feld Seitentitel geben wir Startseite ein. Hier ebenfalls wieder die Option &#8220;Veröffentlicht&#8221; wählen, sonst erhält man unter Umständen später erneut die Meldung &#8220;No pages found&#8221;. Nun klicken wir auf &#8220;Speichern und neu&#8221; und legen direkt die nächsten Seiten an.</p>
<p>Bei der letzten Seite klicken wir auf &#8220;Speichern und schließen&#8221; und kommen somit auf die Übersicht mit der Struktur unserer Website. Ich habe unter anderem eine Seite Aktuelles angelegt und hier zusätzlich die Option &#8220;Seite im Menü verstecken&#8221; gesetzt. Diese Seite wird später nicht über die Hauptnavigation erreichbar sein.</p>
<h2>Schlusswort</h2>
<p>Wir haben in diesem Teil die ersten Einstellungen vorgenommen und eine Struktur für die Website festgelegt. Gehen wir jetzt auf das Frontend bzw. die Frontend-Vorschau, erhalten wir nicht mehr die Meldung &#8220;No pages found&#8221;, dafür aber &#8220;No layout specified&#8221;. Und mit dem Thema Layouts, also den Templates, wird sich der nächste Teil beschäftigen.</p>
]]></content:encoded>
			<wfw:commentRss>http://daniel.melzer.ws/2009/02/55-typolight-tutorial-2-einstellungen-und-seitenstruktur.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>TYPOlight Tutorial #1: Installation und Updates</title>
		<link>http://daniel.melzer.ws/2009/02/54-typolight-tutorial-1-installation-und-updates.html</link>
		<comments>http://daniel.melzer.ws/2009/02/54-typolight-tutorial-1-installation-und-updates.html#comments</comments>
		<pubDate>Sat, 14 Feb 2009 20:23:00 +0000</pubDate>
		<dc:creator>Daniel Melzer</dc:creator>
				<category><![CDATA[TYPOlight/Contao]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://daniel.melzer.ws/2009/02/54-typolight-tutorial-1-installation-und-updates.html</guid>
		<description><![CDATA[Dies ist der erste Artikel in der Serie TYPOlight Tutorials. Im Artikel &#8220;Mehrsprachige Seiten mit TYPOlight&#8221; hatte ich zwar bereits das Thema angerissen, dennoch gehe ich hier nochmal auf die Installation von TYPOlight ein. Zudem zeige ich, wie man eine bestehende Installation manuell aktualisiert. In diesem Teil und den anderen Teilen der Serie nehme ich [...]]]></description>
			<content:encoded><![CDATA[<p>Dies ist der erste Artikel in der Serie TYPOlight Tutorials. Im Artikel &#8220;<a href="/2008/08/40-Mehrsprachige-Websites-mit-TYPOlight.html">Mehrsprachige Seiten mit TYPOlight</a>&#8221; hatte ich zwar bereits das Thema angerissen, dennoch gehe ich hier nochmal auf die Installation von TYPOlight ein. Zudem zeige ich, wie man eine bestehende Installation manuell aktualisiert.</p>
<p>In diesem Teil und den anderen Teilen der Serie nehme ich an, dass die Domain example.org lautet und das CMS direkt über diese Domain erreichbar sein soll. Möchte man TYPOlight in einem Unterverzeichnis betreiben &#8211; zum Beispiel example.org/cms/ &#8211; sind die Pfade natürlich entsprechend anzupassen.</p>
<p><span id="more-54"></span><br />
<h2>Installation</h2>
<p>Für TYPOlight müssen folgende Systembedingungen erfüllt sein:</p>
<ul>
<li>Apache Webserver oder IIS. Apache wird empfohlen.</li>
<li>PHP in der Version 5.1 oder höher</li>
<li>MySQL in Version 4.1 oder höher</li>
<li>GDLib</li>
<li>mcrypt (optional)</li>
</ul>
<p>Zuerst laden wir uns TYPOlight von der <a href="http://typolight.org/">Projektseite</a> herunter, entpacken das Archiv und laden die Dateien auf unserem Server oder Webspace. Anschließend überprüfen wir, ob die Datei system/config/localconfig.php beschreibbar ist, sonst bekommen wir einen entsprechenden Hinweis bei der Installation. TYPOlight wird während der Installation versuchen, in die Datei zu schreiben.</p>
<p>Sollte noch keine Datenbank angelegt sein, holen wir das nun nach. Als nächstes rufen wir das Installtool auf, welches sich unter http://example.org/typolight/install.php befindet. Bei der Erstinstallation lautet das Passwort, nach dem wir gefragt werden, &#8220;typolight&#8221;.</p>
<p>Anschließend kann und sollte das Passwort für spätere Aufrufe &#8211; zum Beispiel für Updates – geändert werden. Als nächstes geben wir einen Encryption Key ein oder lassen es uns direkt generieren, indem wir das Feld einfach leer lassen. Mit diesem Schlüssel können Daten in verschlüsselter Form gespeichert werden. Den Hinweis, dass wir uns den Key notieren und – sofern es verschlüsselte Daten gibt &#8211; in Zukunft nicht ändern sollen beherzigen wir.</p>
<p>Nun geben wir die Daten für die Datenbankverbindung ein und führen im nächsten Schritt das Update auf die Datenbank aus. Dabei werden alle Tabellen für unsere TYPOlight-Installation angelegt.</p>
<p>Anschließend kann man eine Beispielwebsite importieren. Davon sehen wir aber ab und legen in einem der nächsten Teile dieser Serie die Seitenstruktur nach unseren Bedürfnissen an. Zu guter Letzt legen wir jetzt noch unseren Adminuser an.</p>
<h2>Updates</h2>
<p>Die Prozedur für Updates ist ähnlich einer Installation. Grundsätzlich sollte man vor einem Update eine Sicherung seiner Daten vornehmen. Darunter fallen die Dateien im Verzeichnis tl_files, templates sowie die Dateien system/config/localconfig.php, system/config/dcaconfig.php und &#8211; falls vorhanden – sitemap*.xml. Auch sollte man die Hinweise in der Datei CHANGELOG.txt beachten. Beispielsweise war beim Update auf Version 2.6.4 eine Änderung am Template fe_page notwendig.</p>
<p>Als nächstes laden wir uns die aktuelle Version von TYPOlight herunter, entpacken die Dateien und laden sie auf den Server. Bis auf die oben genannten Dateien können wir die bestehenden überschreiben. Anschließend rufen wir wieder unser Installtool unter http://example.org/typolight/install.php auf.</p>
<p>Hier geben wir das Passwort ein, dass wir bei der Installation vergeben haben. Wir brauchen im Grunde nur den Anweisungen des Tools folgen. Alle Daten, die bereits bei der Installation angegeben wurden, stehen uns direkt zur Verfügung. In einigen Fällen ist ein Update der Datenbank erforderlich. Nur noch auf den Button &#8220;Update database&#8221; klicken, das war es auch schon.</p>
<p>Wer das Nachrichtenmodul nutzt, sollte anschließend dieses Modul im Backend aufrufen, damit der Nachrichtenfeed wieder generiert wird.</p>
<h2>Schlusswort</h2>
<p>Wie man sieht ist sowohl die Installation als auch das Aktualisieren von TYPOlight recht einfach. Sollte es doch einmal irgendwo hapern, lohnt sich oft ein Blick in die Dokumentation und dem Forum auf der Projektseite.</p>
]]></content:encoded>
			<wfw:commentRss>http://daniel.melzer.ws/2009/02/54-typolight-tutorial-1-installation-und-updates.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

