Ergebnis 1 bis 4 von 4

Thema: Einfügen von Title, Alias, ID aus übergeordneten Leveln [wf_levelMania]

  1. #1
    Contao-Nutzer
    Registriert seit
    07.07.2009.
    Beiträge
    50

    Standard Einfügen von Title, Alias, ID aus übergeordneten Leveln [wf_levelMania]

    Hallo zusammen,

    ich verwende schon seit einiger Zeit eine kleine Erweiterung, die ich mal erstellt habe und immer wieder verwende. Damit kann man z.B. Titel, Alias, ID usw. aus übergeordneten Leveln anzeigen und/oder im Template verwurschteln. Egal, ob als sichtbarer Text oder auch nur für CSS-Klassen.
    Vielleicht kann ja der eine oder andere etwas damit anfangen...
    Die Erweiterung heißt wf_levelMania (mir ist kein blöderer Name eingefallen) und ist hier zu finden.


    {{levelMania::level, type, mode}}

    level: number (rootlevel = 1)
    type: string (id, title, alias, pageTitle...)
    mode: number or string (if level > level count:: 0 -> last existing level, >0 -> specific level, string -> string value), default: 0

    Example:

    - Menu A1 (Level 1)
    -- Menu A2 (Level 2)
    --- Menu A3 (Level 3)

    Active Menu = Menu A3

    {{levelMania::1, title, 0}} => Menu A1
    {{levelMania::2, title, 0}} => Menu A2
    {{levelMania::3, title, 0}} => Menu A3
    {{levelMania::4, title, 0}} => Menu A3
    {{levelMania::4, title, 2}} => Menu A2
    {{levelMania::4, title, BlaBla}} => BlaBla

    Kann z.B. auch so eingesetzt werden:
    <body class="level_{{levelMania::3, id, 0}}">


    Viele Grüße

    Andi

  2. #2
    Contao-Nutzer
    Registriert seit
    28.10.2011.
    Beiträge
    30

    Standard

    Genau das habe ich gesucht! Danke!

  3. #3
    Contao-Nutzer
    Registriert seit
    07.07.2009.
    Beiträge
    50

    Standard

    Gern geschehen...

    Ich selber nutze die Erweiterung quasi bei jeder Seite.
    Im Body-Tag habe ich z.B. immer sowas drin, damit ich via CSS auf die aktuelle oder auf die Top-Level-Seite reagieren kann.

    Code:
    <body class="mainpage_{{levelMania::3, id, 0}} page_{{page::id}} ..."
    Viele Grüße

    Andi

  4. #4
    Contao-Nutzer
    Registriert seit
    07.07.2009.
    Beiträge
    50

    Standard

    Hallo,

    vielleicht für den einen oder anderen ganz nützlich - ich habe die Erweiterung etwas modifiziert.
    Es sind zwei weitere Parameter dazugekommen: section & sectionMode
    Code:
    {{levelMania::level, type, mode, section, sectionMode}}
    Neue Version: wf_levelMania

    Da ich immer wieder den Fall habe, daß z.B. Headerbilder oder Headerslideshows auf untergeordnete Menüpunkte vererbt werden sollen, habe ich eine kleine Möglichkeit in die Erweiterung eingebaut.
    Einfach bei dem Parameter 'section' den Namen der Section eingeben, also z.B. 'SlideShow' und bei 'level' den Level, aus dem der Inhalt geholt werden soll, also z.B. '3'.
    Die Erweiterung sucht dann alle Artikel-Ids des übergeordneten Menüs auf dem entsprechenden Level und der angegebenen Sektion und listet diese auf.
    Mit dem Parameter 'sectionMode' kann man entweder mit dem Wert '0' eine kommagetrennt Liste ausgeben oder mit dem Wert '1' das ganze als Insert Tags mit {{insert_article::id}}.
    Damit die Insert Tags richtig gerendert werden, muß der Tag mit $this->replaceInsertTags() eingefügt werden, also z.B. so:
    Code:
    $this->replaceInsertTags('{{levelMania::3, alias, 0, SlideShow, 1}}')
    Somit kann man im Template abfragen, ob für den aktuellen Menüpunkt in der Sektion Inhalt ist, wenn ja wird er angezeigt, wenn nein, soll der vom angegebenen, übergeordneten Level verwendet werden, wenn da auch nicht ist, z.B. von der Startseite. Da könnte dann z.B. so aussehen:

    Code:
    if(strlen($this->replaceInsertTags($this->sections['SlideShow'])) != 0)
    {
    	echo $this->sections['SlideShow'];
    }
    else if($this->replaceInsertTags('{{levelMania::3, alias, 0, SlideShow, 0}}') != 0)
    {
    	echo $this->replaceInsertTags('{{levelMania::3, alias, 0, SlideShow, 1}}');
    }
    else
    {
    	echo '{{insert_article::19}}';
    }
    Viele Grüße

    Andi
    Geändert von wingover (09.07.2014 um 16:19 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •