Artikelvergleich Button in die Navigation verschieben

{extends file='parent:frontend/index/shop-navigation.tpl'}


    

        {* Menu (Off canvas left) trigger *}
        {block name='frontend_index_offcanvas_left_trigger'}
            
                
                     {s namespace='frontend/index/menu_left' name="IndexLinkMenu"}{/s}
                
            
        {/block}

        {* Search form *}
        {block name='frontend_index_search'}
            
                
                    

                    {block name='frontend_index_search_display'}
                        {s namespace='frontend/index/search' name="IndexSearchFieldSubmit"}{/s}
                    {/block}
                

                {* Include of the search form *}
                {block name='frontend_index_search_include'}
                    {include file="frontend/index/search.tpl"}
                {/block}
            
        {/block}
        



        {* Article Compare *}
        {block name='frontend_index_navigation_inline'}
            {if {config name="compareShow"}}
                
                    {block name='frontend_index_navigation_compare'}
                        {action module=widgets controller=compare}
                    {/block}
                
            {/if}
        {/block}
        





        {* Cart entry *}
        {block name='frontend_index_checkout_actions'}
            {* Include of the cart *}
            {block name='frontend_index_checkout_actions_include'}
                {action module=widgets controller=checkout action=info}
            {/block}
        {/block}

Hallo Leute, ich hab eine Frage bezüglich des Buttons in der Navigation zum Artikelvergleich.

Aktuell sieht das ganze so aus:

Was ich nun möchte, ist das der Button zwischen der Suche und des Favoriten Icons angezeigt wird.

Meine TPL Datei sieht aktuell wie folgt aus, aber leider funktioniert diese nicht.

 

Vielleicht liegt es an is–hidden ?

Erstens (weil es sehr unsauber ist! Thumb-down):

  1. Wenn du oben {extends … schreibst, wird alles außerhalb von {block …}{/block} Statements verworfen. 

  2. Wieso überschreibst du denn alle Blöcke? Am besten sollte deine TPL nur Blöcke enthalten, die auch Veränderungen enthalten

 

Nun zu deinem Fehler: Wenn du eine Datei vererbst, kannst du nur auf Blöcke aus der Eltern-Datei zugreifen. Du solltest dich nochmal mit dem Vererbungsmechanismus beschäftigen. Deine Datei sollte eher so aussehen:

{extends file='parent:frontend/index/shop-navigation.tpl'}

{* Überschreibt den Block frontend_index_search. Alle anderen Blöcke werden aus dem Elterntemplate übernommen *}
{block name='frontend_index_search'}
    {$smarty.block.parent} {* fügt den Inhalt des Blockes im Eltern Templates hier ein *}

    {* hier hängen wir noch den Compare block dran*}
    {if {config name="compareShow"}}
        
            {block name='frontend_index_navigation_compare'}
                {action module=widgets controller=compare}
            {/block}
        
    {/if}
{/block}

Das ist der komplette Inhalt der Datei. Nicht mehr, nicht weniger.

Damit wird es aber noch nicht getan sein. Denn wenn man einen neuen Artikel zum Vergleich hinzufügt, wird Shopware wahrscheinlich weiterhin den original Vergleichen Button nehmen. Den müsstest du noch entfernen und ggf. das JavaScript entsprechend anpassen.

Viele Grüße

1 „Gefällt mir“

Hab es mal getestet, aber leider klappt es nicht so wie ich mir das gedacht habe, kann es sein, das ich dort vielleicht noch diese Zeile mitnehmen muss? Der Button steht ja in der Datei Bare/frontend/index/topbar-navigation.tpl

{action module=widgets controller=index action=shopMenu}

Aktuell sieht meine shop-navigation.tpl wie folgt aus:
 

{extends file='parent:frontend/index/shop-navigation.tpl'}

        {* Search form *}
        {block name='frontend_index_search'}
            
                
                    

                    {block name='frontend_index_search_display'}
                        {s namespace='frontend/index/search' name="IndexSearchFieldSubmit"}{/s}
                    {/block}
                

                {* Include of the search form *}
                {block name='frontend_index_search_include'}
                    {include file="frontend/index/search.tpl"}
                {/block}
            
            {* Article Compare *}
            {block name='frontend_index_navigation_inline'}
                {if {config name="compareShow"}}
                    
                        {block name='frontend_index_navigation_compare'}
                            {action module=widgets controller=compare}
                        {/block}
                    
                {/if}
            {/block}
        {/block}