[Frage] Kann man im Typoscript Page-Objekt eine IF-Abfrage machen? TYPO3-Version: 9.5.13

  • marion-j marion-j
    R2-D2
    0 x
    115 Beiträge
    1 Hilfreiche Beiträge
    25. 01. 2020, 15:08

    Hallo,
    kann in einem Page-Objekt eine IF-Abfrage gemacht werden?
    Wir haben in unserer Typo3-Installation eine zweite Domain hinzugefügt (Multidomain) und möchten nun im Setup unterscheiden welche Webseite gerade geladen ist und dann die dazugehörige Navigation laden.

    Unser Typoscript sieht wie nachfolgend aus. Damit werden aber auf beiden Webseiten beide Navigationen geladen, was die Seitenladezeit natürlich erhöht. Über die Konstanten übergeben wir jeweils die RootID {$website.rootid} der Webseite. Kann man im Typoscript irgendwie eine IF-Abfrage einbauen, damit anhand der RootID die passende Navi geladen wird?

    [code]page = PAGE
    page.typeNum = 0
    page.10 = FLUIDTEMPLATE
    page.10 {
    ...
    dataProcessing {
    # Mainnavigation Website 1
    10 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
    10 {
    special = list
    special.value = 8,7,6,5,4,753
    levels = 3
    includeSpacer = 1
    as = mainnavigation_1
    }

    # Mainnavigation Website 2
    20 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
    20 {
    special = list
    special.value = 2
    levels = 2
    as = mainnavigation_2
    }

    }
    [/code]


  • 1
  • Teisinger Teisinger
    Jedi-Meister
    0 x
    425 Beiträge
    28 Hilfreiche Beiträge
    25. 01. 2020, 18:49

    Also eigentlich sollte es die Seitenladezeit so gut wie nicht beeinflussen, da Cache.
    (nur beim Aufbau des Caches...)

    Nutzt ihr den schon eine Extension für euer Theme?
    Dann mach doch einfach 2 TypoScript Files daraus - also jeweils eins für jedes Menü und binde auf der jeweiligen Rootseite nur das ein das verwendet wird.

    Hinweis:
    wir mussten bisher die Erfahrung machen (wenn 2 Webseiten die zur selben Company gehören und eigentlich(!) gleich aussehen sollten), das dann im Endeffekt doch so viel unterschiedliches (vor allem in nachhinein) gewünscht wird, das es besser ist die Themes generell zu trennen...

    https://github.com/groundstack-org

  • Julian.Hofmann Julian.Ho...
    Flash Gordon
    0 x
    2917 Beiträge
    110 Hilfreiche Beiträge
    27. 01. 2020, 10:32

    IMO haben alle Dataprocessors des Core eine if-Eigenschaft, auf jeden Fall aber der MenuProcessor:

    [code]page.10 {
    ...
    dataProcessing {
    # Mainnavigation Website 1
    10 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
    10 {
    if.equals = {$website.rootid}
    if.value.data = GETENV:TYPO3_HOST_ONLY
    ...
    [/code]

  • 1