Kurz: Ich will den Inhalt einer ganzen Seite (aus dem Seitenbaum) dauerhaft in meiner rechten Spalte anzeigen. Hier erstmal, was ich schon kapiert habe:
Um Inhalt dauerhaft in meiner rechten Spalte anzuzeigen, erzeuge ich mir z.B. in meinem HTML-Template einen Marker ###RIGHT### und dazu eine Seite vom Typ "Nicht im Menü", in die ich diverse Seiteninhalte reinlege. Über:
temp.myvar = RECORDS
temp.myvar {
tables = tt_content
source = 8
dontCheckPid = 1
}
in meinem Template (Setup) erzeuge ich eine temporäre Variable mit dem Seiteninhalt des TYPO3 Content-Elements der Id 8. Um das dauerhaft einzubinden, muss noch folgendes in mein Default page object:
page = PAGE
page {
[…]
1 = TEMPLATE
1 {
[…]
workOnSubpart = DOCUMENT_BODY
marks {
RIGHT < temp.myvar
}
}
}
Damit fülle ich meine rechte Spalte mit speziellem Seiteninhalt. Wollte ich mehrere Seiteninhalte untereinander haben, müsste man deren Id mit Kommata voneinander getrennt hintereinander weg schreiben, also z.B. "source = 8,11,12".
So weit so gut. Was aber, wenn ich ALLE SEITENINHALTE meiner zuvor erzeugten Seite vom Typ "Nicht im Menü" ausgeben will? Ich will die Bearbeitung jemandem überlassen, der keine Ahnung von TypoScript hat und deshalb nicht ins Template darf.
Hallo
source bezieht sich, wie Du weisst auf die einzelnen Inhaltselemente. pidInList bezieht sich auf eine ganze Seite.
Mit
pidInList = 6
wählst Du alle Inhalte der Seite mit der uid 6.
vg Marco
Danke, aber leider erscheint bei folgender Änderung gar nichts mehr:
temp.myvar = RECORDS
temp.myvar {
tables = tt_content
pidInList = 10
dontCheckPid = 1
}
Hättest du noch einen passenden Code-Schnipsel parat, der mir in der temporären Variable 'myvar' die Seiteninhalte der Seite mit der Id 10 speichert?
Genau so wie du den normalen CONTENT auch anzeigst, nur das da halt die Zeile "pidInList" mit rein kommt
temp.myvar = CONTENT
temp.myvar {
table = tt_content
select.pidInList = 10
select.orderBy = sorting
select.where = colPos = 0
}
Norman
Ah cool, es klappt schonmal, dass der Seiteninhalt der gesamten Seite angezeigt wird. Danke!
Aber: Da steht zwar sorting drin, aber die Inhalte werden in der Reihenfolge ausgegeben, wie sie angelegt wurden. Hat man im Backend die Reihenfolge verändert, wirkt sich das nicht auf die Anzeige im FE aus. Hab auch schon Cache von TYPO3 und Browser geleert. Ist da ein Tippfehler?
Ich seh keinen Tippfehler. Versuch doch einfach mal das ganze ohne temp-Variable:
CONTENT_RIGHT = CONTENT
CONTENT_RIGHT {
table = tt_content
select {
where = colPos = 0
orderBy = sorting
pidInList = 6
languageField = sys_language_uid
}
}
So funktioniert es bei mir.
vg Marco
Hab den Fehlerteufel: Und der ist seltsam!
Wenn ich in den Menüpunkt "Liste" gehe und dort die Reihenfolge verändere und mir das Ganze anschließend in "Seite" anschaue, dann hab ich dort eine andere Reihenfolge. Ich muss also die Reihenfolge der Seiteninhalte im Menüpunkt "Seite" ändern und nicht in "Liste" -> erst dann geht's.
Wieso sind das verschiedene Reihenfolgen? Welche Reihenfolge bestimme ich unter "Liste"? Wo wirkt sich das aus?
Danke! Funzt! *Freu*