Das Örtchen RSS-Feed
Kategorie
Kategorie: Blog
Buttons & Statistiken

Drupal Association - Individual Member

Neueste Kommentare

TYPO3: TemplaVoilà – Content Sliding

Anfang 2012 musste ich mich beruflich mit TYPO3 4.5 LTS und der Extension TemplaVoilà vertraut machen. Schnell kam bei mir die Frage auf, wie man die Dateneingabe bei der Nutzung von TemplaVoilà minimieren kann. In meinem letzten Artikel Data Element mehrfach mappen habe ich bereits erklärt, wie es möglich ist, eine Information einmalig in einer Seite bzw. Page zu hinterlegen und an mehreren Stellen in den HTML-Quelltext einzufügen. Doch was ist, wenn sich die Information gar nicht in der gleichen Seite befindet?

Ausgangslage

Die Information wurde auf der Startseite hinterlegt. Diese Originalseite hat die ID 32 und benutzt eine eigene Data Structure. In TemplaVoilà wurde für die zu übernehmende Information ein Data Element angelegt. Der Feld-Name und Title können beliebig gewählt werden (gehen wir für mein Beispiel von "field_auszeichnungen" und "Auszeichnungen" aus). Das Data Element hat den Typ "Element (EL)" und das Element Preset "Page-Content Elements [Pos.: 0]". Es können also mehrere Content Objects (beispielsweise Inhaltselemente vom Typ "Regular Text Element") in ihm hinterlegt werden.

Der Inhalt von "Auszeichnungen" soll auf allen unseren Unterseiten angezeigt werden, jedoch nur auf der Startseite tatsächlich hinterlegt sein. Die Data Structure der Unterseiten unterscheidet sich von der der Startseite.

Die Lösung

Die Vorgehensweise ist nicht weiter schwer und basiert auf den Möglichkeiten der Extension KB TV Content Slide. Nach deren Installation legen wir in der Data Structure der Unterseiten ebenfalls das Data Element "Auszeichnungen" an. Die Einstellungen sind identisch zum Original.

Anschließend müssen wir noch den TypoScript Code unter Data processing gegen nachfolgende Variante ersetzen.

 10= RECORDS
10.source.postUserFunc = tx_kbtvcontslide_pi1->main
10.source.postUserFunc.field = field_auszeichnungen
10.source.postUserFunc.table = tt_content
10.source.postUserFunc.overridePage = 32
10.source.postUserFunc.collect = 1
10.tables = tt_content 

Hinweis: Wichtig ist hierbei die korrekte Angabe des Feld-Namens und der ID der Originalseite.

Will man anstatt einer festen ID die Information von der nächsthöheren Seite im Page Tree übernehmen, so dürfte das Snippet von Stig Nørgaard Færch hilfreich sein.

Fazit

Wenn man identische Informationen auf mehreren Seiten anzeigen will und der Kunde bei einer Änderung keinen TypoScript-Code anfassen soll, so scheint mir die Vorgehensweise eine praktikable Lösung zu sein. Da ich mich jedoch nur kurz mit TYPO3 und TemplaVoilà beschäftigt habe, ist es nicht zwingend die einfachste Variante. Deswegen frage ich mich, ob jemand eine alternative Vorgehensweise kennt?

Bild von Jan Teriete Hallo! Bist du neu hier? Dann abonniere doch den RSS-Feed dieses mal mehr oder weniger stillen Örtchens, um über meine geistigen Ergüsse auf dem Laufenden zu bleiben. Du kannst aber auch gerne diesen Artikel in den sozialen Netzwerken teilen und mit Deinen Kontakten über das Thema diskutieren.

Neuen Kommentar hinzufügen

Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt.
Der Inhalt dieses Feldes wird öffentlich zugänglich angezeigt, aber als rel="nofollow" markiert.
Hinweis

Die mit einem Stern markierten Daten werden zur Bearbeitung Deines Kommentars benötigt und zusammen mit Deiner IP-Adresse erfasst (siehe Datenschutzerklärung).

Kommentare beleben den Blog! Ich freue mich über jeden Kommentar. Du kannst hier offen Deine Meinung zum Artikel sagen, aber bitte beachte die Netiquette und vermeide es andere zu beleidigen.

Bitte unterlasst es die Kommentare zu SEO-Zwecken zu missbrauchen. Kommentare mit Links, die nicht zu Blogs führen (oder zu Blogs mit Grauzonen-Themen) und/oder Keywords als Namen verwenden, sind nicht erwünscht!

Möchtest Du mir einen Blog-Artikel schmackhaft machen, dann schreib die URL ohne HTML-Tag in den Kommentarbereich und ich werde diesen bei Gefallen verlinken.