Content/treeLevel [Gelöst]

  • tomas tomas
    TYPO3-Anwärter
    0 x
    4 Beiträge
    0 Hilfreiche Beiträge
    13. 11. 2006, 15:22

    Hallo,
    ich habe angefangen unsere Site in Typo3 umzusetzen. Es funktioniert alles bestens (Testaufbau, intern), nur folgendes Problem habe ich:

    Auf dem letzten treeLevel befinden sich vom Aufbau her andere Seiten als auf dem höheren Level. In unserem 3-Spalten Design soll hier individueller Inhalt für die rechte Spalte eingefügt werden. So weit kein problem, nur will ich bei den höheren Levels ein einheitliches Inhalt. Somit brauche ich eine Erkennung, ob es sich um den letzten Level handelt, oder nicht.

    Dieser Beispiel ist ein wenig starr, da sich nicht alle Produkte auf dem Level 5 befinden:
    [TS]# zusatzinfos aus der rechten spalte der seite
    [treeLevel = 5]
    RIGHTSIDE = CONTENT
    RIGHTSIDE < styles.content.getRight
    [global][treeLevel = 0,1,2,3,4]
    RIGHTSIDE = RECORDS
    RIGHTSIDE {
    tables = tt_content
    source = 199
    dontCheckPid = 1
    }
    [global][/TS]

    Ah ja, das mit dem einbinden eines Datensatzes (uid 199) funktioniert auch nicht richtig.

    Kann mir da bitte jemand helfen?

    Danke, Tomas


  • 1
  • toyde toyde
    Jedi-General
    0 x
    1971 Beiträge
    0 Hilfreiche Beiträge
    13. 11. 2006, 16:14

    [TS]# zusatzinfos aus der rechten spalte der seite
    [treeLevel = 5]
    RIGHTSIDE = CONTENT
    RIGHTSIDE < styles.content.getRight
    [global][treeLevel = 0,1,2,3,4]
    RIGHTSIDE = RECORDS
    RIGHTSIDE {
    tables = tt_content
    source = 199
    dontCheckPid = 1
    }
    [global][/TS]
    Falls dies eine [b]condition [/b]sein soll, stimmt;
    a) entweder die relative Objektdefinition nicht (RIGHTSIDE = RECORDS) oder
    b) deine condition nicht, da evtl. innerhalb geschweifter Klammern.

    Wenn Objekte direkt in einer condition deklariert werden sollen, dies am besten über temp-Objekte durchführen. Hilfen dazu gibt's im Forum.

    [quote="tomas"]Ah ja, das mit dem einbinden eines Datensatzes (uid 199) funktioniert auch nicht richtig.[/quote]
    Wenn die condition nicht greift, verständlich.

    [quote="tomas"]Auf dem letzten treeLevel befinden sich vom Aufbau her andere Seiten als auf dem höheren Level. In unserem 3-Spalten Design soll hier individueller Inhalt für die rechte Spalte eingefügt werden. [/quote]
    Falls ohnehin nur im letzten TreeLevel(angeblich 5) eine alternative Darstellung gewünscht ist, lege doch auf betroffener Seite ein +extTemplate an und überschreib Dir das entsprechende Objekt.

    grüsse

  • tomas tomas
    TYPO3-Anwärter
    0 x
    4 Beiträge
    0 Hilfreiche Beiträge
    14. 11. 2006, 07:42

    Danke für die schnelle Anwort.
    Es stimmt, die Bedingung ist innerhalb von geschweiften Klammern.
    Wie sollte dann aber das Config aussehen?

    Momentaner Zustand ist so:

    [TS]# Sprachen
    config.linkVars = L
    config.sys_language_uid = 0
    config.language = de
    config.locale_all = deutsch

    # deutsch
    [globalVar = GP:L = 0]
    config.sys_language_uid = 0
    config.language = de
    config.locale_all = deutsch
    [global]# englisch
    [globalVar = GP:L = 1]
    config.sys_language_uid = 1
    config.language = en
    config.locale_all = english
    [global]

    # franzoesisch
    [globalVar = GP:L = 3]
    config.sys_language_uid = 3
    config.language = fr
    config.locale_all = francais
    [global]# italienisch
    [globalVar = GP:L = 4]
    config.sys_language_uid = 4
    config.language = it
    config.locale_all = italiano
    [global]

    # spanisch
    [globalVar = GP:L = 5]
    config.sys_language_uid = 5
    config.language = es
    config.locale_all = espanol
    [global]

    #seite selbst
    config.cache_period = 10
    page = PAGE
    page {
    typeNum = 0
    # Allgemeine Seiteneigenschaften setzen
    bodyTag = <body bgcolor="FFFFF" topmargin="0" leftmargin="0">
    meta.AUTHOR =
    meta.DESCRIPTION =
    meta.COPYRIGHT =
    meta.KEYWORDS =
    meta.description =
    meta.revisit = 7 days
    meta.robots = index,follow

    stylesheet = fileadmin/css/style.css

    # Die Designvorlage integrieren
    10 = TEMPLATE
    10 {
    template = FILE
    template.file = fileadmin/seba/vorlagetab.html
    workOnSubpart = BODY_INHALT

    marks {

    # pageheader bild mit überschrift
    PAGEHEADER < temp.pageHeader

    # menue nur level 1
    MENU_OBEN < temp.topNavi

    # sprachauswahl
    FLAGGS < temp.Flaggs

    # aktueller ort auf der seite
    #BREADCRUMB < temp.Breadcrumb

    # navigation ab level 2, falls vorhanden
    MENU_LINKS < temp.mainNavi

    # news?
    #LEFTSIDE <


    #SEITENTITEL = TEXT
    #SEITENTITEL.value = {page:title}
    #SEITENTITEL.insertData = 1
    #SEITENTITEL.wrap = <h1>|</h1>

    # inhalt aus der mittleren spalte der seite
    INHALT = CONTENT
    INHALT < styles.content.get

    #DATUM < temp.Datum2
    DATUM = TEXT
    DATUM.data = date : d.m.Y

    SPRACHE < temp.beispielmenu

    PAGEFOOTER < temp.pageFooter

    # zusatzinfos aus der rechten spalte der seite
    [treeLevel = 5]
    RIGHTSIDE = CONTENT
    RIGHTSIDE < styles.content.getRight
    [global][treeLevel = 0,1,2,3,4]
    RIGHTSIDE = RECORDS
    RIGHTSIDE {
    tables = tt_content
    source = 199
    dontCheckPid = 1
    }
    [global]}
    }
    }
    [/TS]

    Muss ich ein neues Page-Objekt für die Bedingung erstellen?

    Ich habe fast vergessen: Auf dem 5.-ten Level wird korrekt die rechte Spalte ausgegeben. Ansonsten handelte sich nur um Test, deswegen habe ich versucht die Levels direkt anzusprechen. Es ist leider so, dass nicht alle Seiten, wo die rechte Spalte ausgegeben werden soll, sich auf dem Level 5 befinden.

    Danke, Tomas

  • toyde toyde
    Jedi-General
    0 x
    1971 Beiträge
    0 Hilfreiche Beiträge
    14. 11. 2006, 10:42

    Hallo,

    Wie gesagt, für dein Problem gibt es zwei Möglichkeiten, die mir gerade einfallen:
    Die condition umschreiben - oder Du legst für deine Level-5-Seite eine eigene Konfiguration an (sprich Du überschreibst z.B. mit +extTemplate dein RIGHTSIDE-Objekt).

    [b]condition[/b]
    [TS]# zusatzinfos aus der rechten spalte der seite
    [treeLevel = 5]
    temp.MYOBJECT = CONTENT
    temp.MYOBJECT < styles.content.getRight
    [global][treeLevel = 0,1,2,3,4]
    temp.MYOBJECT = RECORDS
    temp.MYOBJECT {
    tables = tt_content
    source = 199
    dontCheckPid = 1
    }
    [global]

    ..
    ..

    # im PAGE-Bereich
    ..RIGHTSIDE < temp.MYOBJECT
    [/TS]
    Damit lagerst Du die Abfrage vor alle Klammern aus. Schreibe conditions immer zu Beginn im Setup-Bereich (hast Du ja bei den anderen Abfragen richtigerweise durchgeführt).
    Das definierte temporäre Objekt wird an entsprechender Stelle hineinkopiert "<" .

    Nochmals zum ausdrucken und einrahmen, falls das jemand liest ;)

    [b]conditions[/b] dürfen [b]nicht [/b]innerhalb geschweifter Klammern stehen.

    grüsse

  • tomas tomas
    TYPO3-Anwärter
    0 x
    4 Beiträge
    0 Hilfreiche Beiträge
    14. 11. 2006, 13:06

    Vielen Dank für die nette und schnelle Antwort. :D

    Tomas

  • 1