Problem mit Shopseite Template (if block)

Hallo,

ich bin dabei die frontend/custom/index.tpl anzupassen um eine spezielle Shopseite zu erstellen. (natürlich im eigenen Theme Ordner, nicht im Bare.

In der if Schleife checke ich auf die entsprechende Shopseite um dann etwas mehr “wrapper code” mit einzubeziehen…

Jedoch wird immer der Code im If Block ausgegben, auch beim Aufruf anderer Shopseiten

Ich habe schon endlos Varianten ausprobiert.

Entweder ich habe etwas übersehen oder mache etwas grundlegend falsch.

Über einen Hinweis würde ich mich freuen.

 

{extends file="parent:frontend/index/index.tpl"}

{if $sCustomPage.id == 9}
    {block name='frontend_index_content_main'}
        
            {* Content top container *}
            {block name="frontend_index_content_top"}{/block}
            
                {* Sidebar left *}
                {block name='frontend_index_content_left'}
                    {include file='frontend/index/sidebar.tpl'}
                {/block}
                {* Main content *}
                {block name='frontend_index_content_wrapper'}
                    

                        {* Custom Content Start*}
                      
                        {* Custom Content ENDE *}
                    
                {/block}
            
        
    {/block}

{else}
{*Standard custom.tpl*}

    {* Breadcrumb *}
    {block name="frontend_index_start"}
        {$smarty.block.parent}
        {$sBreadcrumb = []}
        {if $sCustomPage.parent}
            {$sBreadcrumb[] = [
            'name' => $sCustomPage.parent.page_title|default:$sCustomPage.parent.description,
            'link' => {url sCustom=$sCustomPage.parent.id}
            ]}
        {/if}
        {$sBreadcrumb[] = [
        'name' => $sCustomPage.page_title|default:$sCustomPage.description,
        'link' => {url sCustom=$sCustomPage.id}
        ]}
    {/block}

    {block name="frontend_index_header"}
        {include file="frontend/custom/header.tpl"}
    {/block}

    {* Main content *}
    {block name="frontend_index_content"}
        

            {* Custom page tab content *}
            {block name="frontend_custom_article"}
                
                    {block name="frontend_custom_article_inner"}
                        {* Custom page tab headline *}
                        {block name="frontend_custom_article_headline"}
                            {$sCustomPage.description}
                        {/block}

                        {* Custom page tab inner content *}
                        {block name="frontend_custom_article_content"}
                            {$sContent}
                        {/block}
                    {/block}
                
            {/block}

        
    {/block}

    {* Sidebar left *}
    {block name="frontend_index_content_left"}
        {include file="frontend/index/sidebar.tpl"}
    {/block}


{/if}

 

 

 

Ausserhalb eines Blocks können keine Bedingungen oder sonstige Smarty-Codes oder HTML plaziert werden.
Das If muss dann schon in den / einen Block.

1 „Gefällt mir“

Außerdem würde ich bei Shopseiten tatsächlich einfach eine xyz.tpl im custom Ordner ablegen und dann in den Shopseiten-Einstellungen bei tpl Variable 1 sCustom und bei tpl Pfad 1 dann die frontend/custom/xyz.tpl eintragen

@BestShopPossible‍ danke für deine Antwort.

Hatte ich auch zunächst vor, aber man kann scheinbar bei dieser Methode nicht von der index.tpl ableiten.

Und das muss ich, um weitere divs von der index.tpl zu bearbeiten.