Dma elementgenerator: Unterschied zwischen den Versionen
Aus Contao Community Documentation
Carino (Diskussion | Beiträge) |
Carino (Diskussion | Beiträge) (→Element erstellen) |
||
Zeile 4: | Zeile 4: | ||
= Beispiel = | = Beispiel = | ||
− | = Element erstellen = | + | == Element erstellen == |
Nach der erfolgreichen Installation wählt man zunächst den neuen Menüpunkt "Elementgenerator" unterhalb von Layout. | Nach der erfolgreichen Installation wählt man zunächst den neuen Menüpunkt "Elementgenerator" unterhalb von Layout. | ||
<br /> | <br /> |
Version vom 7. September 2010, 20:25 Uhr
Inhaltsverzeichnis
DMA Elementgenerator
Der Elementgenerator bietet eine Möglichkeit, Daten in einem vorgegebenem Layout auszugeben.
Beispiel
Element erstellen
Nach der erfolgreichen Installation wählt man zunächst den neuen Menüpunkt "Elementgenerator" unterhalb von Layout.
An dieser Stelle lassen sich Elemente erstellen, die völlig unabhängig voneinander strukturierte Inhalte ausgeben. Wir klicken also auf die Schaltfläche "Neues Element" und füllen die Maske wie folgt aus:
Bezeichnung = Buch
Kategorie = Layouts
Template = dma_eg_default (temporär)
Als Inhaltselement bereitstellen auswählen
Die Bezeichnung dient nur der internen Verwaltung im Backend. Auch der Name der Kategorie ist frei wählbar und ordnet die Datensätze mit gleicher Bezeichnung innerhalb der Auswahl des Elementtyps im Bereich der Inhaltselemente. Das Template lassen wir vorübergehend so, bis wir später ein eigenes Template für den Datensatz erstellen.
Der Datensatz lässt sich selbstverständlich auch als Modul bereitstellen. Somit kann man diesen beispielsweise auch direkt im Seitenlayout verlinken.
Felder hinzufügen
Nun legen Sie Felder an, die Sie ausgeben möchten. Die Auswahl ähnelt der von Formularen: Legende, Textfeld, Textarea, Auswahlliste, Checkboxen, Radiobuttons, Seitenauswahl, Dateiauswahl
Als nächstes legen wir ein Textfeld und füllen es folgendermaßen aus:
Beschriftung = Titel
Feldname = titel
Beschreibung = Bitte vergeben Sie für das Buch einen Titel
Danach ein Textarea mit diesen Daten:
Beschriftung = Beschreibung
Feldname = beschreibung
Beschreibung = Bitte beschreiben Sie das Buch
Zeilen = 5
Spalten = 100
Letzlich noch ein Feld "Dateiauswahl" zur Generierung eines Bildes:
Beschriftung = Bild
Feldname = bild
Beschreibung = Wählen Sie ein Bild aus
Vorgabe = (hier könnte man ein Default-Bild angeben)
Art der Auswahl = ft_radio
Pfad = Pfad/zum/Bild.jpg
Template anlegen
Nun liegt uns ein Datensatz vor mit drei Feldern, die wir in einem Template abfragen möchten. Unter Layout/Templates legen wir ein neues Template auf Basis des Originaltemplates "dma_eg_default.tpl" und weisen diesem das jeweilige Zielverzeichnis zu. Nach dem Speichern kann über "bearbeiten" der name geändert werden. z.B. in dma_eg_buchvorstellung.tpl und natürlich muss man dieses neue Template unter "Elementgenerator/Buch" gegen das Standardtemplate ersetzen.
<div class="<?php echo $this->class; ?> block"<?php echo $this->cssID; ?> <?php if ($this->style): ?> style="<?php echo $this->style; ?>"<?php endif; ?>> <h1><?php echo $this->elements['titel']; ?></h1> <?php if ($this->elements['bild']): ?> <!-- teaserstart --> <div class="image_container"> <img src="<?php echo $this->elements['bild']; ?>" alt="<?php echo $this->elements['titel']; ?>" width="150" /> <div class="caption"><?php if ($this->elements['titel']): ?> <?php echo $this->elements['titel']; ?><?php endif; ?></div> </div> <!-- teaserend --> <?php endif; ?> <div> <!-- teaserstart --> <?php if ($this->elements['beschreibung']): ?><?php echo nl2br($this->elements['beschreibung']); ?><?php endif; ?> <!-- teaserend --> </div> </div>
In dem Template wird das Bild in einer Breite von 150 Pixel ausgegeben, die Bildunterschrift gibt den Titel wieder.
Buch als Inhaltselement
In der Artikelstruktur lässt sich nun dieses Inhaltelement "Buch" wie jeden anderen Elementtyp dem Artikel hinzufügen. Wählt man diese nun aus, findet man die drei Felder vor, die nun auszufüllen sind und kann den Datensatz nun Speichern und betrachten.
--Carino 21:00, 07. Sept. 2010 (UTC)