Standardinhalt anzeigen, wenn die Contentspalte leer ist

In diesem Beispiel zeige ich, wie man einen Standardinhalt anzeigt, wenn die Spalte "Rechts" nicht gefüllt ist. Sobald sie Inhalt besitzt, wird der Standardinhalt durch diesen ersetzt.

Wir definieren also unseren Standardinhalt, in diesem Fall ein RECORDS-Objekt mit der ID 5. Dieser kann auf einer versteckten Seite liegen.

Wichtig: die ID 5 ist die ID des Contentelementes und nicht der Seite!

TypoScript
temp.standardinhalt = RECORDS
temp.standardinhalt {
    tables=tt_content
    source=5
    dontCheckPid = 1
}

Nun wollen wir den Standardinhalt überschreiben, falls in der Rechten Spalte Inhalt ist. Hierzu bedienen wir uns der stdWrap-Eigenschaft override.

Unser Problem ist: Das Objekt RECORDS hat keine stdWrap-Eigenschaft, also packen wir es in ein COA.

Die Anweisung sieht dann so aus:

 

TypoScript
page.10.subparts.STANDARDINHALT= COA
page.10.subparts.STANDARDINHALT {
	10 = COA
	10.10  < temp.standardinhalt
	10.stdWrap.override.cObject   < styles.content.getRight
} 
13 Kommentare
#13 musti schrieb am 16.03.2011 09:32

Danke für diese Anleitung,genau was ich 2 tagen lang gesucht habe!!! Big Grins

#12 Jocmoc schrieb am 31.05.2010 13:11

Ja ich auch!!!

#11 Jocmoc schrieb am 31.05.2010 13:11

Ja ich auch!!!

#10 Gerd schrieb am 05.02.2010 14:19

Hallo,

 

danke für die Anleitung, das ist fast genau das, was ich grad suche. Allerdings nehme ich TemplaVoila als Templatetechnik und da gibt es ja "styles.content.getRight" nicht.

 

Wie kann ich das Ganze im TV Umfeld erreichen?

 

Danke für Tipps,

Gerd

#9 Andreas Hirt schrieb am 23.06.2009 20:12

Guten Abend Steffen

 

Danke für die sehr hilfreichen Tipps auf dieser Seite...

Habe da noch eine Frage zu Mehrsprachigkeit (1 Box für jede Sprache) Wie kann ich je den ID selektieren?

 

Gruss

--AH

#2 walk2moon schrieb am 13.08.2008 12:06

Hallo Steffen,

 

vielen Dank für dein schönes Tutorial. das funktioniert soweit auch schon ganz gut. Ich bin auf der Suche nach einer Erweiterung zu deinem Tipp. Ich möchte gerne, dass beim Anlegen einer neuen Seite bestimmte "Standard-Inhalte" schon eingefügt sind. Also im Backend als Datensatz angezeigt werden.

 

Ist so etwas vielleicht auch möglich?

Grüße

#3 steffen schrieb am 13.08.2008 12:46

Das ist mit Boardmitteln leider nicht möglich

#4 walk2moon schrieb am 13.08.2008 14:02

Halolo Steffen,

 

vielen Dank für deine Antwort. Das hört sich wohl nach einer neuen Extension an... ok, mal schauen, was sich da machen lässt.

 

Nun den, eine letzte Frage: Wie hast du denn den schönen Link zum Anker deines Kommentarformulars gemacht? --> Einen Kommentar schreiben Eek

 

Vielen Dank für deine hervorragende Arbeit und die vielen Stunden, die du hier in diese Seite packst!

Grüße

#5 walk2moon schrieb am 15.08.2008 12:23

Entschuldige Steffen,

wenn ich hier nochmals anknüpfe, aber ich suche schon seit einiger Zeit nach einer Möglichkeit, wie ich einen solchen Kommentarlink mit direkter Verknüpfung zu einem Anker (direkt zum Formular) erzeugen könnte.

Ist das eine Extension oder erzeugst du diesen irgendwie manuell per TS?

 

Vielleicht kannst du mir ja da noch kurz was dazu sagen zwinker

 

Viele Grüße

#6 steffen schrieb am 15.08.2008 12:59

das ist bestandteil der Extension "Page comments" die ich hier verwende zwinker

#7 walk2moon schrieb am 15.08.2008 13:11

WOOOW, ich werd verückt. Die Extension ist genial. Super flexibel zu konfigurieren. Klasse. Steffen, ich ziehe meinen Hut!

 

Allerdings finde ich im Manual nichts zur Erstellung dieses Links... Bin ich blind oder blöd? Rolleyes zwinker

 

Grüße

#8 walk2moon schrieb am 15.08.2008 13:27

Ok, ich habe verstanden. Die showFormLink-Variable arbeitet zusammen mit showForm. Ebenso showCommentsLink und showComments... Gute Sache. Gibt es hier noch eine Möglichkeit für einen weiteren Marker für tt_news? Somit könnte man dann schön unter den einzelnen Beiträgen eine Kommentar-Funktionsleiste mit Link zum Formular und Link direkt zu den Kommentaren anlegen... Wäre doch ne schöne Sache, oder? smile

#1 Freshmeat schrieb am 02.01.2008 16:28

Diese Lösung hat bei leider nicht geholfen. Zudem ist es in den meisten Fällen sinnvoller alle Inhalte der entsprechenden Spalte zu übernehmen.

 

das nachfolgende TYPOSKRIPT kann genau das bewerkstelligen.

 

page.marks {

BANNER = CONTENT

BANNER {

renderObj.stdWrap.wrap =

|

table = tt_content

select.orderBy = sorting

select.where = colPos = 3

select.languageField = sys_language_uid

 

stdWrap.ifEmpty.cObject = CONTENT

stdWrap.ifEmpty.cObject {

table = tt_content

select.orderBy = sorting

select.pidInList = 1

select.where = colPos = 3

select.languageField = sys_language_uid

}

} // ENDE BANNER

}

einen Kommentar schreiben
Typo3