Alle Unterkategorien auf einer Seite // Artikel nicht in Hautptkategorie anzeigen

Liebe Community,

ich habe ein listing Template erstellt, in dem alle Unterkategorien einer Hauptkategorie angezeigt werden. Das funktioniert auch soweit wunderbar. Problem ist jetzt, wenn ich alle Unterkategorien auf einer Seite darstelle, sind alle Artikel mehrfach vorhanden, da diese ja ebenfalls in der übergeordneten Kategorie dargestellt werden.

Das ist mein Code für das Listing:

{* Emotion worlds *}
{block name="frontend_listing_list_promotion"}
    {if $hasEmotion}
        {$fullscreen = false}



        {block name="frontend_listing_emotions"}
            

                {foreach $emotions as $emotion}
                    {if $emotion.fullscreen == 1}
                        {$fullscreen = true}
                    {/if}

                    
                    
                {/foreach}

                
            
        {/block}
    {/if}
{/block}

{* Listing wrapper *}
{block name="frontend_listing_listing_wrapper"}

{function name=findCategory categoryId=0}
    {foreach from=$categories item=category}
        {if $category.id == $categoryId}

            {if $category.subcategories && $category.subcategories|@count}
                
                    {foreach $category.subcategories as $subcategory}
                        {$subcategory.name}
                    



    {if $showListing}

        {$listingCssClass = "listing--wrapper"}

        {foreach $showListingDevices as $device}
            {$listingCssClass = "{$listingCssClass} visible--{$emotionViewports[$device]}"}
        {/foreach}

        {if $theme.sidebarFilter}
            {$listingCssClass = "{$listingCssClass} has--sidebar-filter"}
        {/if}
        
        

            {* Sorting and changing layout *}
            {block name="frontend_listing_top_actions"}
                {include file='frontend/listing/listing_actions.tpl'}
            {/block}

            {block name="frontend_listing_listing_container"}
                

                    {block name="frontend_listing_no_filter_result"}
                        
                            {include file="frontend/_includes/messages.tpl" type="info" content="{s name=noFilterResult}Für die Filterung wurden keine Ergebnisse gefunden!{/s}" visible=false}
                        
                    {/block}

                    {block name="frontend_listing_listing_content"}
                        

                            {* Actual listing *}
                            {block name="frontend_listing_list_inline"}
                                {foreach $sArticles as $sArticle}
                                    {include file="frontend/listing/box_article.tpl"}
                                {/foreach}
                            {/block}
                        
                    {/block}
                
            {/block}

            {* Paging *}
            {block name="frontend_listing_bottom_paging"}
                
                    {include file="frontend/listing/actions/action-pagination.tpl"}
                
            {/block}
        
    {/if}
                    
                    
{/foreach}
                
            {/if}

        {elseif $category.subcategories}
            {call name=findCategory categories=$category.subcategories categoryId=$categoryId}
        {/if}
    {/foreach}
{/function}

{if $sCategories}
    {call name=findCategory categories=$sCategories categoryId=$sCategoryCurrent}
{elseif $sMainCategories}
    {call name=findCategory categories=$sMainCategories categoryId=$sCategoryCurrent}
{/if}
{/block}

 

Das Ergebnis sieht so aus:

Soweit, so gut. Jetzt möchte ich aber, dass nur die Artikel der jeweiligen Subcategory angezeigt werden. Der Artikel TESTARTIKEL Barock dürfte also in der Kategorie Renaissance nicht erscheinen, genauso der andere Artikel. Dieser dürfte in der Kategorie Barock nicht erscheinen.

Ich habe jetzt schon seit Stunden die Google Suche bemüht, aber bin keinen Schritt weitergekommen. Ich brauche unbedingt eine Lösung für dieses Problem und bin für jeden Tipp dankbar.