Mehrere PIDs im Fluidtemplate auslesen, verneinen und für eine condition verwenden

Will man eine condition im Fluidtemplate auf bestimmte Seiten Ids anwenden, gibt es mehrere Optionen:

1. Möglichkeit:
man schreibt folgenden Code ins Typoscript:

lib.currentPageId = TEXT
lib.currentPageId.data = TSFE:id

und diesen ins Fluidtemplate:

<f:if condition="{f:cObject(typoscriptObjectPath:'lib.currentPageId')} == 100">
   mach was
</f:if>

dann wird auf Seite 100 etwas gemacht.

2. Möglichkeit:
man schreibt dieses ins Fluidtemplate:

<f:if condition="{0:data.uid} == {0:'100'}">
    mach was
</f:if>

oder

<f:if condition="{data.uid} == '100'">
    mach was
</f:if>

dann wird ebenfalls auf Seite 100 etwas gemacht. Ein dazu gehörender Typoscript Code ist in diesem Fall nicht erforderlich.
Die Inline Schreibweise sieht so aus:

{f:if(condition: '{data.uid} == \'100\'', then:'...')}

Gut verwendbar z.B. wenn eine Klasse in einem Element auf einer bestimmten Seite gesetzt werden soll:

class="{f:if(condition: '{data.uid} == \'100\'', then:'classname')}"

Mehrere Seiten Ids im Fluidtemplate für eine condition ansprechen

Für mehrere Seiten modifiziert man den Code aus Möglichkeit 2 folgendermaßen:

<f:if condition="{0:data.uid} == {0:'100'} || {0:data.uid} == {0:'101'}">
    mach was
</f:if>

dann wird sowohl auf Seite 100 als auch auf Seite 101 etwas gemacht – natürlich auf beiden Seiten das gleiche 😉

Mehrere Seiten Ids im Fluidtemplate identifizieren und mit einer condition ausschließen

Will man genau das Gegenteil, nämlich dass auf diesen beiden Seiten nichts gemacht wird aber auf allen anderen Seiten schon, so funktioniert dieses:

<f:if condition="{0:data.uid} != {0:'100'} && {0:data.uid} != {0:'101'}">
    mach was
</f:if>

dann wird auf allen Seiten etwas gemacht außer auf Seite 100 und 101.

Link:
https://stackoverflow.com/questions/40088721/check-if-pid-of-current-page-is-x