Zum Inhalt springen

inhaltselement ausblenden?

Erstellt am 5. April 2004 · 5 Antworten · letzte Antwort am 5. April 2004

Tags: Inhaltselemente, Frage

nagus ·

hallo

hab in meinem haupt-template ein inhaltselements aus einer bestimmten seite (pid=128-) eingefügt

# NEWSBOX einfügen
marks.news_1 = CONTENT
marks.news_1 { 
table = tt_content 
select { 
pidInList = 128 ###=id der Seite mit dem darzustellenden Inhalt 
orderBy = sorting
} 
}

mein problem: die eingefügte box soll auf einer bestimmten seite NICHT angezeigt werden (nämlich auf der news-detailseite mit id=30)

wie mache ich das? wie sage ich in typoscript "if pid =30 dann bitte dieses element NICHT einfügen, egal was im root-template steht"

danke für jede hilfe!

TW ·
nagus schrieb

hallo

hab in meinem haupt-template ein inhaltselements aus einer bestimmten seite (pid=128-) eingefügt

# NEWSBOX einfügen
marks.news_1 = CONTENT
marks.news_1 { 
table = tt_content 
select { 
pidInList = 128 ###=id der Seite mit dem darzustellenden Inhalt 
orderBy = sorting
} 
}

mein problem: die eingefügte box soll auf einer bestimmten seite NICHT angezeigt werden (nämlich auf der news-detailseite mit id=30)

wie mache ich das? wie sage ich in typoscript "if pid =30 dann bitte dieses element NICHT einfügen, egal was im root-template steht"

danke für jede hilfe!

hi
schon mal an conditions gedacht...
gibs mal in die suche ein...

cu
thorsten

nagus ·
TW schrieb

hi
schon mal an conditions gedacht...
gibs mal in die suche ein...

cu
thorsten

danke!
das hat mir weiter geholfen!

was ich aber nicht verstehe sind die synthax...

[globalVar = TSFE:id = 30]

blöde frage... aber wieso nicht einfach "if pid = 30 then" ?

maxhb ·

Hi!

nagus schrieb

frage... aber wieso nicht einfach "if pid = 30 then" ?

Stell Dir vor, Du möchtest eine Variable selbst belegen und zufällig nennst Du die title, pid oder nach einer anderen internen Typo3 Variablen - das gibt Ärger.
Daher ist es so organisiert, dass diese Variablen - in diesem Bsp. diejenigen, die das FE betreffen - in bestimmten Arrays gekapselt sind. Hier ist dies das Array $GLOABLS['TSFE'], das Du wie in Deinem Code gezeigt ansprechen kannst. Über diese Schreibweise kannst Du aber auch andere PHP-Arrays abfragen, z.B. $_SERVER, $_POST, $_GET, $HTTP_SERVER_VARS ...
Die Allgemeine Syntax ist also

[globalVar = ARRAYNAME:ARRAYINDEX = WERT]
  #Bedingung trifft zu: Mache das Eine
[else]
  #Ansonsten: Mache das andere
[end]

Hmm, kann man das verstehen ...

CU
maxhb

nagus ·
maxhb schrieb

Hi!

nagus schrieb

frage... aber wieso nicht einfach "if pid = 30 then" ?

Stell Dir vor, Du möchtest eine Variable selbst belegen und zufällig nennst Du die title, pid oder nach einer anderen internen Typo3 Variablen - das gibt Ärger.
Daher ist es so organisiert, dass diese Variablen - in diesem Bsp. diejenigen, die das FE betreffen - in bestimmten Arrays gekapselt sind. Hier ist dies das Array $GLOABLS['TSFE'], das Du wie in Deinem Code gezeigt ansprechen kannst. Über diese Schreibweise kannst Du aber auch andere PHP-Arrays abfragen, z.B. $_SERVER, $_POST, $_GET, $HTTP_SERVER_VARS ...
Die Allgemeine Syntax ist also

[globalVar = ARRAYNAME:ARRAYINDEX = WERT]
  #Bedingung trifft zu: Mache das Eine
[else]
  #Ansonsten: Mache das andere
[end]

Hmm, kann man das verstehen ...

CU
maxhb

hmmm... ich bin leider kein programmierer, daher tu ich mich hier ehrlich gesagt nicht ganz so leicht.

was mich aber irritiert ist, dass da nix von "if" steht... oder kann ich "globalVar =" als "if" lesen? wahrscheinlich nicht, oder?

(ich entschuldige mich für die dummen fragen)

maxhb ·

Hi!

nagus schrieb

was mich aber irritiert ist, dass da nix von "if" steht... oder kann ich "globalVar =" als "if" lesen? wahrscheinlich nicht, oder?

Richtig, im Prinzip kann man das als if-Abfrage verstehen. So wie ich es oben aufgeschrieben habe kannst Du auch noch einen else-Zweig einbauen...

CU
maxhb