HTML-Element mit Smarty erweitern

Hallo,

Ich bin momentan dabei das Design eines Kunden zu überarbeiten um mehr updatesicherheit zu gewährleisten.

Ich bin nun bei der frontend/index/index.tpl angekommen und dort wurden zwei Anpassungen gemacht, die es schwer machen das Ganze updatesicher zu halten.

Es handelt sich hier eigentlich “prinzipiell” um zwei einfache Probleme:

  1. Ich habe ein bereits bestehendes HTML-Element, welches ich um eine {if}-Smartyabfrage erweitern möchte, also

    {block name=“frontend_index_page_wrap”}

    {/block}

    {* Dieser Block soll um folgende {if}-Abfrage erweitert werden *}

    {block name=“frontend_index_page_wrap”}

    {/block}

     Ich hoffte, dass das vielleicht mit {$smarty.block.parent} umsetzbar ist, aber das page-wrap div würde ja dann zweimal geladen werden. Gibt es hierzu vielleicht eine einfache Lösung? Ansonsten müsste ich den kompletten Block nachbauen, was das ganze ja wieder etwas anfällig für updates macht.
     
     
     Das zweite Problem ist auch "relativ" einfach. Ich möchte einen {block} in einen darüberliegenden {block} nesten. Jedoch kommt danach ein kleiner HTML- Schnipsel der es auch wieder etwas kompliziert für mich macht. Codebeispiel:
    
     
           {* Shop header *}
             {block name='frontend_index_navigation'}
                 
       
                 {* ...some content... *}
    
                 
             {/block}       
    

    {* …smarty block soll folgendermaßen aufgebaut werden… *}

       {* Shop header *}
             {block name='frontend_index_navigation'}
                 
       
                    {* ...some content... *}
    
                 {block name='frontend_index_navigation_categories_top'}
                    {* ...some content... *}
                 {/block}
    
                 
             {/block}
    
     Gibt es hierfür auch eine leichte und übersichtliche Lösung, damit ich den Block einfach reinladen kann und dann mit append oder prepend oder dem {$smarty.block.parent} den Rest reinladen kann?
    

    Ich hoffe die beiden Probleme wurden verständlich erklärt und möglicherweise weiß jemand hierzu eine Lösung.

    Vielen Dank im Vorraus,

    Maximilian K.