Um mein Vorhaben zu verdeutlichen versuche ich das mal zu erklären.
Auf der Home (Startseite id=12903) befindet sich ein Content Element das ein Bild eines Videos enthält. Klickt man auf dieses Bild wird per jquery ein Div eingeblendet. In dem Div soll dann das Content Element einer anderen Seite (id=13422) ausgegeben werden. Die andere Seite enthält das Video.
http://rapid.gds-hosting.net/index.php?id=12903
Im dunkelgrauen Balken ist das das linke Bild!
Wie Ihr seht wird mir bereits die Seitenid ausgegeben. Ich habe im Content Element (Bild) der Startseite die Seite mit dem Video als Header Link angegeben.
Hier der entscheidende TS Schnippsel. Hier müsste noch die Ausgabe des Richtigen Content Elementes hin.
tmp.MYVIDEO = CONTENT
tmp.MYVIDEO.table = tt_content
tmp.MYVIDEO.select {
orderBy = sorting
where = colPos = 1
}
tmp.MYVIDEO.renderObj = COA
tmp.MYVIDEO.renderObj {
10 = TEXT
10.field = header_link
// Bis hier klappt es, die id wird ausgegeben //
10.dontCheckPid = 1
10.table = tt_content
10.select {
orderBy = sorting
where = colPos = 1
}
Ich komme nicht drauf und bräuchte das ganz dringend. Kann mir jemand einen Tipp geben wie ich weiterkomme?
Das cObj TEXT hat nicht die selben Funktionen wie das CONTENT Objekt - TEXT.table usw. gibt es also gar nicht.
Der 2. Teil müsste (sofern ich das richtig verstanden habe) so aussehen:
tmp.MYVIDEO.renderObj = COA
tmp.MYVIDEO.renderObj {
10 = CONTENT
10.table = tt_content
10.select {
pidInList.data = field:header_link //hier den link als PID übergeben
orderBy = sorting
where = colPos = 1
}
10.renderObj = ......
}
Da das Video vermutlich auf einer anderen Seite deiner Installation liegt, könntest du auch einfach das Bild verlinken.
Und dann per jQuery bei Klick auf das Bild via AJAX die Seite oder das Video von der verlinkten Seite holen z.b. als Lightbox o.ä.
Das hätte den Vorteil, dass auch Menschen wie ich ( die Javascript deaktiviert haben ) zumindest auf die Videoseite kommen.
So im Sinne von Barierrefreiheit und so.
Erst einmal Danke für den neuen Lösungsansatz! ;-)
Das ich mit TEXT nicht weiterkomme ist mir gestern noch klar geworden. Ich will ja auch keinen Text ausgeben!
Ich habe es momentan soweit laufen.
tmp.MYVIDEO = CONTENT
tmp.MYVIDEO.table = tt_content
tmp.MYVIDEO.select {
orderBy = sorting
where = colPos = 1
}
tmp.MYVIDEO.renderObj = COA
tmp.MYVIDEO.renderObj {
10 = CONTENT
10.table = tt_content
10.select {
pidInList.data = field:header_link
orderBy = sorting
where = colPos = 1
}
Wenn ich:
#10 = TEXT
#10.data = debug:data
ausgeben lasse, zeigt es mir aber die Debug Daten der ersten Seite an.
Da ich relative wenig mit TS mache fallen mir solche Dinge immer etwas schwer. Vor allem der Fall hier.
Ich hänge gerade hier:
10.renderObj
Ich bin gerade auf der suche wie es hier dann weitergeht.
Chrissli schrieb
Da das Video vermutlich auf einer anderen Seite deiner Installation liegt, könntest du auch einfach das Bild verlinken.
Und dann per jQuery bei Klick auf das Bild via AJAX die Seite oder das Video von der verlinkten Seite holen z.b. als Lightbox o.ä.
Das hätte den Vorteil, dass auch Menschen wie ich ( die Javascript deaktiviert haben ) zumindest auf die Videoseite kommen.
So im Sinne von Barierrefreiheit und so.
Ja Du hast schon recht, das wäre besser, aber mein Kunde will das so haben! :-)
tmp.MYVIDEO.renderObj = COA
tmp.MYVIDEO.renderObj {
10 = CONTENT
10.table = tt_content
10.select {
pidInList.data = field:header_link
orderBy = sorting
where = colPos = 1
}
Eigentlich sollte das hier doch reichen um auf den Link zu kommen, oder?
Wenn es interessiert.
Hier die Lösung:
tmp.subPagesIds = CONTENT
tmp.subPagesIds.table = tt_content
tmp.subPagesIds.select {
orderBy = sorting
where = colPos = 1
}
tmp.subPagesIds.renderObj = COA
tmp.subPagesIds.renderObj {
10 = Content
10.field = header_link
10.table = tt_content
10.select {
orderBy = sorting
where = colPos = 1
languageField = sys_language_uid
}
}
lib.MYVIDEO = CONTENT
lib.MYVIDEO.table = tt_content
lib.MYVIDEO.select {
pidInList.cObject < tmp.subPagesIds
orderBy = sorting
where = colPos = 0
}