Hallo Forum,
ich habe die Übersicht der Archivliste unterhalb meines Untermenüs mittels einem Submarkers ausgeben lassen:
Untermenüpunk1
usw.
Jetzt ist dies ja kein Menu sondern nur des News Plugin vom Typ (AMENU)!
Wenn ich nun auf Januar 2006 klicke, wird mir in meinem Hauptcontent eine liste(LIST) von Einträgen aus Januar 2006 angezeigt.
Klicke ich eine der Nachrichten an, sehe ich die detailierte Nachricht (SINGLE).
Wie schaffe ich es, bzw. ist es überhaupt Möglich,
das bei Klick auf eine Archivliste:
und anschließend auch auf Klick eines Eintrages zur Singleansicht, dieser Punkt als Aktiv gekennzeichnet wird?
argh...
#giggle# ich Hoffe ich habs des nicht ganz zu kompliziert beschrieben O_o
liebe Grüße
sandra
Schnucki, du dein Archiv!
Also, da du per TypoScript nur auf den Titel des Archivlinks zugreifen kannst, bleibt dir auch nur diese Möglichkeit als Lösung.
Um heraus zu finden, ob der jeweilige Archiv-Menüpunkt ausgewählt wurde musst du die POST/GET Variablen abfragen. Realisieren kannst du dies mit einer IF-Abfrage, die du auf das entsprechenden Objekt anwenden musst.
if {
value.field = start
equals.data = GPvar:tx_ttnews|pS
}
Hierbei bildet value.field das Datenbank-Feld der Tabelle tt_news. equals.data stellt den Vergleich dar. Lesen muss man das also folgendermaßen:
Wenn der Wert des Datenbank-Feldes start der GET/POST Variablen tx_ttnews[pS] entspricht, dann kommt das Objekt, der das IF zugewiesen wurde, zur Anwendung.
Einen "ELSE" Zweig kann man durch eine Negation realisiersen:
negate = 1
Also wieder zu dem archivTitleCObject aus deinem letzten Posting:
plugin.tt_news {
reverseAMenu = 1
archiveMode = month
archiveTitleCObject >
archiveTitleCObject = COA
archiveTitleCObject {
# normal
10 = COA
10 {
10= TEXT
10 {
field = start
strftime = %B
wrap = <div><div style="width: 65px; float: left;">|</div>
}
11 = TEXT
11 {
field = stop
strftime = %Y
wrap =|</div>
}
if {
value.field = start
equals.data = GPvar:tx_ttnews|pS
negate = 1
}
}
# aktiv
20 = COA
20 {
10= TEXT
10 {
field = start
strftime = %B
wrap = <div style="background-color:red;"><div style="width: 65px; float: left;">|</div>
}
11 = TEXT
11 {
field = stop
strftime = %Y
wrap =|</div>
}
if {
value.field = start
equals.data = GPvar:tx_ttnews|pS
}
}
}
}
Aber wie ich vorher schon einmal sagte handelt es sich nur um den Titel, den Link selber kannst du dadurch nicht beinflussen. Ausserdem funktioniert dieses Beispiel auch nur, wenn du für deine News nicht:
useHRDates = 1
gesetzt hast. Dies würde nämlich bedeuten, das anstatt der GET-Parameter pS, pL und arc die Variablen year und month übergeben werden und du diese abfragen musst.
OMG! 😃
spezialolli ... ja das ist es! Es reicht vollkommen aus, den DIV zu beeinflussen und nicht des a Tag 😃
Jetzt sieht man wenigstens wo man sich befindet *freu*
Ich bin Dir so Dankbar :o Ich hoffe ich kann mich auch mal bei Dir revangieren , befürchte aber rein Wissentechnisch Typo3-Spezifisch wird des nichts werden 😉
vielen lieben Dank nochmal spezialolli *knutsch* << Und der Kiss Smiley fehlt immer noch *g*
Sandra
Hi!
Wenn ich mich mal hier einklinken darf ...
spezialolli schrieb
Ausserdem funktioniert dieses Beispiel auch nur, wenn du für deine News nicht:
useHRDates = 1
gesetzt hast. Dies würde nämlich bedeuten, das anstatt der GET-Parameter pS, pL und arc die Variablen year und month übergeben werden und du diese abfragen musst.
Soweit alles klar, aber wie genau mache ich das Abfragen des "month" bei annem useHrDates? So geht's irgendwie nicht:
plugin.tt_news {
reverseAMenu = 1
archiveMode = month
archiveTitleCObject >
archiveTitleCObject = COA
archiveTitleCObject {
# normal
10 = COA
10 {
10= TEXT
10 {
field = start
strftime = %B
wrap = <div><div style="width: 65px; float: left;">|</div>
}
11 = TEXT
11 {
field = stop
strftime = %Y
wrap =|</div>
}
if {
value.field = start
equals.data = GPvar:tx_ttnews|month
negate = 1
}
}
# aktiv
20 = COA
20 {
10= TEXT
10 {
field = start
strftime = %B
wrap = <div style="background-color:red;"><div style="width: 65px; float: left;">|</div>
}
11 = TEXT
11 {
field = stop
strftime = %Y
wrap =|</div>
}
if {
value.field = start
equals.data = GPvar:tx_ttnews|month
}
}
}
}
Jemand nen Tipp?
Grüße, Tobias
Na da klink ich mich gleich auch mit ein.
Ich will das ganze mit nem Jahresmenü machen. Mit pS funktioniert alles, aber der Vergleich mit GPvar:tx_ttnews|year funktioniert einfach nicht. Auslesen und ausgeben kann ich die Variable. Ich nehm mal an, das passiert, weil in start und stop ein Timestamp steht, ich aber mit ner Jahreszahl vergleiche, bzw. Tobias mit nem Monat.
Wie kriegen wir also da noch ein strftime mit in die Abfrage rein?
Hm, ok. Da hätt ich auch früher drauf kommen können...
@Tobias: So sieht meine Abfrage jetzt aus. Eventuell kannst du das ja für dich irgendwie verwenden.
plugin.tt_news {
archiveMode = year
archiveTitleCObject >
archiveTitleCObject = COA
archiveTitleCObject {
10 = COA
10 {
11 = TEXT
11 {
field = start
strftime = %Y
wrap = <span id="amenu-active">|</span>
}
if {
value.field = start
value.strftime = %Y
equals.data = GPvar:tx_ttnews|year
}
}
20 = COA
20 {
11 = TEXT
11 {
field = start
strftime = %Y
wrap =
}
if {
value.field = start
value.strftime = %Y
equals.data = GPvar:tx_ttnews|year
negate = 1
}
}
}
}
Hallo erstmal... ich habe folgendes problem: im Moment wird mein Menü so dargestellt:
Nachrichten Archiv:
* 2008
* 2008: 1 Einträge
Ich hätte aber gerne folgende Ausgabe:
*2008 *2007 *2006
das die Einträge nebeneinander hängen, bekomm ich hin per CSS aber ich will weder das anfangsjahr, noch die anzahl der einträge (maximal mit einer Klammer zb. 2008 (8-))
hat jemand hier einen plan wie ich das realisieren kann?
Grüße Harry aka Randomresult
Ich hätte dazu auch eine Frage.
Wie bekomme ich es denn hin das der erste Eintrag des AMenues automatisch aktiviert ist? Oder ist das nicht möglich?