Problem mit konditionalem Ersetzer

Hier bekommst Du deutschsprachigen Support. Keine Fehlermeldungen oder Erweiterungswünsche bitte!
Post Reply
photojo
Posts: 717
Joined: Wed 15. Nov 2006, 20:02
Location: Regensburg, Germany
Contact:

Problem mit konditionalem Ersetzer

Post by photojo »

Hi,

ich habe folgendes im Template

Code: Select all

[LEFT]
    <div class="col-md-3">
        {VERTMENU}
        {LEFT}
    </div>
[/LEFT ]
    <div class="col-md-[LEFT]9[/LEFT][LEFT_ELSE]12[/LEFT_ELSE]">
        {CONTENT}
    </div>
In einem Script in frontend_render steht u.a.

Code: Select all

$_vertmenu = trim(   buildCascadingMenu( 'F,' . $LEVEL_ID[1] . ',,act_path,active' )   );
Auf der Startseite ist wegen $LEVEL_ID[1] VERTMENU nicht befüllt. Dennoch reagiert es nicht. Wie kann ich es verschachteln, dass es reagiert?

Gruß Jo
Old Boy
Posts: 1203
Joined: Fri 23. Nov 2012, 13:52

Re: Problem mit konditionalem Ersetzer

Post by Old Boy »

Deine Frage ist für mich nicht verständlich... was soll denn am Ende rauskommen???
User avatar
Oliver Georgi
Site Admin
Posts: 9907
Joined: Fri 3. Oct 2003, 22:22
Contact:

Re: Problem mit konditionalem Ersetzer

Post by Oliver Georgi »

Wozu überhaupt das zusätzliche Script?

Code: Select all

[LEFT]
    <div class="col-md-3">
        [LEVEL1_ID]{NAV_LIST_UL: F,  {LEVEL1_ID} , , act_path , active } [/LEVEL1_ID]
        {LEFT}
    </div>
[/LEFT ]
    <div class="col-md-[LEFT]9[/LEFT][LEFT_ELSE]12[/LEFT_ELSE]">
        {CONTENT}
    </div>
Außerdem muss das aktuell geöffnete LEVEL 1 weitere Untermenüpunkte besitzen.
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
photojo
Posts: 717
Joined: Wed 15. Nov 2006, 20:02
Location: Regensburg, Germany
Contact:

Re: Problem mit konditionalem Ersetzer

Post by photojo »

Hallo Oli, hallo Oldboy,

danke für eure Postings.
Also, der Code von Oli klappt prinzipiel und bringt mich etwas weiter, allerdings habe ich noch ein Problem. Am besten schildere ich nochmal etwas verständlicher was am Ende klappen sollte:

1. Auf der Startseite soll es nur dann eine linke Spalte (col-3) geben, wenn es einen CP gibt, der in {LEFT} angezeigt werden soll. Auf der Sartseite soll es aber _nie_ ein vertikales menü geben.
2. Auf allen anderen Seiten soll es immer ein vertikales Menü geben und, falls vorhanden, CPs in {LEFT}

Ich habe nun folgendes:

Code: Select all

        [LEVEL1_ID]  
 			  <div class="col-md-3 sidey">
                          {NAV_LIST_UL: F,  {LEVEL1_ID} , , act_path , active }
       			</div>
        [/LEVEL1_ID]

			 <div class="col-md-[LEVEL1_ID]9[/LEVEL1_ID][LEVEL1_ID_ELSE]12[/LEVEL1_ID_ELSE]">
						    {CONTENT}           
					 
			</div>
Das klappt gut: auf allen Seiten, außer der Startseite taucht links ein Menü auf.

Nun das Problem: Auf der Startseite soll aber auch was in {LEFT} auftauchen, falls einen entsprechender CP im "Startartikel" liegt. Und das geht leider noch nicht.

Ein Variante alá

Code: Select all

[LEFT]
{LEFT}
[LEVEL1_ID]
 {NAV_LIST_UL: F,  {LEVEL1_ID} , , act_path , active }
[/LEVEL1_ID]
[/LEFT]
führt aber dazu, dass das {NAV_LIST_UL: F, {LEVEL1_ID} , , act_path , active } auch nicht erscheint, wenn {LEFT} leer ist.

Wie könnte ich das Problem noch lösen?!
Old Boy
Posts: 1203
Joined: Fri 23. Nov 2012, 13:52

Re: Problem mit konditionalem Ersetzer

Post by Old Boy »

Die schnellste Sache (ohne jegliche "Programmierkenntnis") wäre, für die HP eine eigene Vorlage zu verwenden, die keine Navi generiert!
photojo
Posts: 717
Joined: Wed 15. Nov 2006, 20:02
Location: Regensburg, Germany
Contact:

Re: Problem mit konditionalem Ersetzer

Post by photojo »

Klar, Old Boy, das wäre sicher auch eine Variante, aber ich bevorzuge, wenn irgendwie möglich, ein Template.
User avatar
Oliver Georgi
Site Admin
Posts: 9907
Joined: Fri 3. Oct 2003, 22:22
Contact:

Re: Problem mit konditionalem Ersetzer

Post by Oliver Georgi »

Zusätzliches Template ist hier ungünstig, weil Menüpunkte eher dynamischer Art sind. Wann immer möglich, sollte mit einem einzigen Template gearbeitet werden. Vor allem bei vielen Menüpunkten ist das irgendwann nicht mehr zu überschauen.
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
photojo
Posts: 717
Joined: Wed 15. Nov 2006, 20:02
Location: Regensburg, Germany
Contact:

Re: Problem mit konditionalem Ersetzer

Post by photojo »

So, ich habe mein Problem gelöst. Vielleicht gehts noch "kürzer", aber es geht.

Hier der code

Code: Select all

[LEFT]
        <div class="visible-lg">
          <div class="col-md-3 sidey">
            <!-- Sidebar Starts Here -->
            <div class="padd sidebar">
              <!-- Each sidebar should be enclosed inside "widget class" -->
              <!-- 1st widget -->
              {LEFT}
              [LEVEL1_ID]
              <div class="nlu_navi1"> {NAV_LIST_UL: F,  {LEVEL1_ID} , , act_path , active } </div>
              [/LEVEL1_ID] 
              </div>
            <!-- Sidebar Ends Here -->
          </div>
        </div>
        [/LEFT]
        [LEFT_ELSE]
        [LEVEL1_ID]
        <div class="visible-lg">
          <div class="col-md-3 sidey">
            <!-- Sidebar Starts Here -->
            <div class="padd sidebar">
              <div class="nlu_navi1"> {NAV_LIST_UL: F,  {LEVEL1_ID} , , act_path , active } </div>
            </div>
            <!-- Sidebar Ends Here -->
          </div>
        </div>
        [/LEVEL1_ID]
        [/LEFT_ELSE]
        <!-- betrifft die content-spalte -->
        [LEFT]
        <div class="col-md-9" >
          <div class="whity content">
            <!-- Content should be encloased inside div with the class "posts" -->
            <div class="posts">
              <!-- Each entry should be enclosed inside div with the class "entry" -->
              <div class="entry">
                <!--  <div class="padd">    -->
                <!-- Entry title -->
                <!-- Flex Slider -->
                {CONTENT}
                <!--  </div>      -->
              </div>
            </div>
          </div>
        </div>
        [/LEFT]
        [LEFT_ELSE]
        <div class="col-md-[LEVEL1_ID]9[/LEVEL1_ID][LEVEL1_ID_ELSE]12[/LEVEL1_ID_ELSE]" >
          <div class="whity content">
            <!-- Content should be encloased inside div with the class "posts" -->
            <div class="posts">
              <!-- Each entry should be enclosed inside div with the class "entry" -->
              <div class="entry">
                <!--  <div class="padd">    -->
                <!-- Entry title -->
                <!-- Flex Slider -->
                {CONTENT}
                <!--  </div>      -->
              </div>
            </div>
          </div>
        </div>
        [/LEFT_ELSE]
Post Reply