Zum Inhalt springen

TS Basic Template einbinden

Erstellt am 11. Dezember 2013 · 5 Antworten · letzte Antwort am 13. Dezember 2013

Tags: TYPO3 4.x, Frage

Philipp88 ·

Hallo 🙂

Ich bin gerade dabei eine Mobileseite umzusetzen. Dazu habe ich 2 Templates (ein für die Hauptseite und eins fürs Mobile) und habe sie in ein Sysfolder gelegt.

Auf mein Root habe ich auch ein Template der entscheiden soll, welches Basis- Template eingebunden wrd (über Conditions). Ist so etwas überhaupt möglich?

Es gibt ja unter Template -> Enthält die Möglichkeit ein Basistemplate einzubinden. Nur nützt mir das nichts, da ich es ja dynamisch brauche... Kann man es irgendwie mit Typoscript bewerkstelligen?
Es gibt ja include_typoscript=source:file, ich habe aber kein File sondern ein Sysfolder... Kann man auch den einbinden?

Danke im Vorraus
Philipp

Schweriner ·

Das ist eigentlich mal eine sehr interessante Frage. Mir wäre nicht bewusst, dass man ein "Template einbinden" auch über Typoscript realisieren kann, was mich eigentlich wundert. Wie sehr unterscheiden sich die beiden Versionen denn?

Julian.​Hofmann ·

So ganz verstanden habe ich glaub ich noch nicht, was Du tun möchtest...

page.10 = TEMPLATE
page.10 {  
  template = FILE  
  template.file = fileadmin/template.html   
}
[userFunc = user_isMobileDevice()]
  page.10.template.file = fileadmin/mobile.html   
[global]

Für ganze TypoScriptdateien wäre es:

<INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/default/setup.ts">
[userFunc = user_isMobileDevice()]
  <INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/mobile/setup.ts">
[global]

(Achtung: durch die Condition um das include herum, darf innerhalb des inkludierenten TS keine weitere Condition auftauchen. Schachtelung von Conditions wird nicht unterstützt.

Den Inhalt von Sysfolder kann man IMHO nicht via TS direkt einbinden. Bei Strukturierung Deines TS über Dateien und (Filesystem-)Ordner lässt sich aber das Ganze wie oben einbinden (und ab TYPO3 CMS 6.2 auch alle TypoScript-Dateien eines Ordners in einem Rutsch)

Chrissli ·

So ganz verstanden habe ich glaub ich noch nicht, was Du tun möchtest...

Ich glaube er wollte das

<INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/default/setup.ts">

nur eben mit des Code aus der Datenbank bzw. aus dem Sysfolder.
Eigentlich ein interessanter Gedanke, wäre mir aber auch neu, dass das geht...

Philipp88 ·

Danke für eure Antworten 🙂

Ja ich wollte das so wie Chrissli und Schweriner schon sagten haben 🙂 Das ist ja schade das so etwas nicht geht🙁
Ich habe das Typoscript da doch in einer Datei jetzt gepackt.
Mein Ziel war ja, mittels Conditons die Steuerung des Templates zu bestimmen (domain).
Leider wird meine Anweisung ignoriert🙁

[globalString = HTTP_HOST=sandbox.domain.de]

<INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/ts/setup.ts">

[else]

<INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/mobile/templates/typoscript/setup.ts">

[end]
Philipp88 ·

Ich weiß jetzt wo das problem liegt. Ich kann ja Conditons nicht verschachteln🙁 Leider haben meine 2 Templates Conditons drin die ich nicht einfach entfernen kann. Gibt es noch eine Möglichkeit ein Template an die Domain zu verknüpfen vll. irgendwie mit if?