Hallo,
im TypoScript meines Templates habe ich ein Textobjekt, dem als Wert ein Dateiname zugewiesen wird. Den Dateinamen möchte ich an anderer Stelle verwenden, um die Datei einem Subpart zuzuweisen. Ich suche also in etwa so etwas:
dateiname = TEXT
dateiname = fileadmin/template/datei.htm
[...]
HTMLSUBPART = FILE
HTMLSUBPART.file = dateiname
Kann mir jemand sagen wie diese Zuweisung korrekt aussehen müsste? Das Textobjekt oben ist dabei zwingend ein Textobjekt und der Dateiname ist im Gegensatz zu obigem Beispiel absolut variabel, ich kann ihn also nicht direkt dem FILE-Objekt zuweisen.
Viele Grüße
covsoul
Einem Textobjekt musst Du über die Eigenschaft value einen Wert zuweisen also sprich:
dateiname.value = fileadmin/template/datei.htm
Den Value müsstest Du dann ála HTMLSUBPART.file < dateiname.value zuweisen können.
Wie Du das Textobjekt dynamisch machst ist dann noch eine andere Frage ;-)
Das funktioniert genau so wie es sein soll, vielen Dank!
Allerdings war es wohl doch zu naiv gedacht, dass das mein ursprüngliches Problem löst, denn das bekomme ich über diesen Workaround doch nicht gelöst.
Das Textobjekt ist dynamisch, da ich den Dateinamen einer als Medien-Ressource eingebundenen PHP-Datei auslese. Das entsprechende PHP-Script soll ins Template eingebunden werden. So sieht das momentan aus:
phpresource = FILES
phpresource {
references.data = levelmedia:-1, slide
references.listNum = 0
renderObj = TEXT
renderObj.data = file:current:publicUrl
}
phpfile = TEXT
phpfile.value < phpresource
#phpfile.value beinhaltet an dieser Stelle den Dateipfad, also genau das Gesuchte.
includeLibs.my_functions < phpfile.value # <-- Hier liegt das Problem
phpscript = USER_INT
phpscript.userFunc = contact->show
[...]
HTMLSUBPART < phpscript
Die einzelnen Abschnitte funktionieren für sich einwandfrei:
- phpfile.value beinhaltet den korrekten Pfad der Ressourcendatei
- das PHP-Script funktioniert einwandfrei, wenn ich den Dateinamen statisch angebe
- die Zuweisung zum Subpart klappt auch
Nur mit dynamischem Dateinamen funktioniert es nicht. Evtl. weil die Quelle hier kein FILE- sondern ein FILES-Objekt ist? (Daher hatte ich versucht, das Text-Objekt als Umweg dazwischen zu setzen.)
Hat jemand eine Idee wie ich den Dateipfad hier korrekt zuweisen muss?
Ich vermute mal auch im neuen Jahr hat niemand eine spontane Lösungsidee? o.O