[TYPO3-german] Spezifisches CE mittels Typoscript manipulieren

Bernd Wilke t3n at pi-phi.de
Fri Dec 18 14:32:29 CET 2015


Am 18.12.2015 um 13:28 schrieb Ben Ner:
> Quote: Bernd Wilke[1][2] wrote on Fri, 18 December 2015 10:16
>> das geht schon. man muss nur die Rendering Konfiguration dieses
>> CE-types verändern.
>> und hier fängt es an kompliziert zu werden:
>> je nach dem wie unique diese Änderung sein soll muss man natürlich
>> auch dafür sorgen dass alles nur dort geändert wird.
>>
>> 1) es gibt keine weiteren CEs dieses Typs: die Änderungen können
>> einfach global wirken
>> 2) auf dieser Seite gibt es keine weiteren CEs dieses Typs:
>> a) gibt es keine Unterseiten (mit einem CE diesen Typs) hilft ein
>> einfaches Extensiontemplate auf dieser Seite in dem die Änderugen
>> eingetragen werden.
>> b) es gibt Unterseiten mit CEs, die nicht geändert wrden sollen:
>> du braucht eine TS-Condition für diese spezielle Seite, damit die
>> Modifikatioenen nur dort wrksam sind.
>> 3) auf der Seite gibt es andere CEs disen Typs, die aber nicht
>> modifizeirt werden sollen:
>> jetzt musst du alle Änderungen mit einem .stdWrap.if versehen, damit
>> sie nur auf genau diesem einen CE wirksam werden (Vorsicht wenn diese
>> CE mal gelöscht und wieder neu eingefügt wird!) evtl. im .stdWrap.if
>> nicht auf die CE-uid abfragen sondern die CE-colPos.
>>
>> bernd
> ----------------------------------------------------
>
> ich würde eben um weitreichende Auswirkungen zu vermeiden variante 3
> bevorzugen und auf die genaue Inhaltsid zeigen, hier eben 188.
> Wie würde das TS hierzu aussehen und kann ich es in die page.ts packen?
>
> Müsste ja theoretisch über tt_content.menu.20 erreichbar sein oder? Nur
> wie sieht dann dort die if geschichte aus?

am besten suchst du dir mit dem TSOB die Stellen raus, die du 
modifizieren willst.
dann fügst du deien Änderungen hinzu (kann auch im TSOB erfolgen)
und anschließend musst du darum noch .stdWrap.if packen

danach das ganze dann im T3-editor (Info/edit) sauber zusammen 
schreiben. ggfls auch die ifs dort mit kopieranweisung überall anhängen, 
so dass bei geänderten Bedingungen nur eine Stelle geändert werden muss.

zb.
... typolink {
   ATagParams = target="_blank"
   ATagParams {
     stdWrap.if {
       equals = 188
       value.field = uid
     }
   }

da du aber zwischenzeitlich nicht mehr mit dem CE-record sondern mit dem 
Page-record des Menüeintrages arbeitest wird das Feld 'uid' nicht mehr 
so das passende sein.
Daher wirst du das wohl weiter vorne in eine Register packen müssen um 
es dann im .if zu benutzen.

(Ich sagte ja: das ist die komplizierteste Variante!)

bernd


More information about the TYPO3-german mailing list