in der linken Box nur Unterkategorie anzeigen

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
Vlt. hilft dann folgender Ansatz weiter:
Statt der /boxes/box_categories.tpl wird in einem Child-Template die /snippets/categories_recursive.tpl geändert.
Die Zeilen 43 - 57
HTML:
<li{if $category->kKategorie == $activeId || ((isset($activeParent) && isset($activeParent->kKategorie)) && $activeParent->kKategorie == $category->kKategorie)} class="active"{/if}>
    <a href="{$category->cURL}"{if $hasItems} class="nav-sub"{/if} data-ref="{$category->kKategorie}">
        {$category->cName}
        {if $hasItems}<i class="fa fa-caret-{$caret} nav-toggle pull-right"></i>{/if}
    </a>
    {if $hasItems}
        <ul class="nav">
            {if !empty($category->Unterkategorien)}
                {include file='snippets/categories_recursive.tpl' i=$i+1 categories=$category->Unterkategorien limit=$limit activeId=$activeId activeParents=$activeParents}
            {else}
                {include file='snippets/categories_recursive.tpl' i=$i+1 categoryId=$category->kKategorie limit=$limit categories=null activeId=$activeId activeParents=$activeParents}
            {/if}
        </ul>
    {/if}
</li>
wie folgt ändern:
HTML:
{if isset($inPath) || $category->kKategorie == $activeId}
<li{if $category->kKategorie == $activeId || ((isset($activeParent) && isset($activeParent->kKategorie)) && $activeParent->kKategorie == $category->kKategorie)} class="active"{/if}>
    <a href="{$category->cURL}"{if $hasItems} class="nav-sub"{/if} data-ref="{$category->kKategorie}">
        {$category->cName}
        {if $hasItems}<i class="fa fa-caret-{$caret} nav-toggle pull-right"></i>{/if}
    </a>
    {if $hasItems}
        <ul class="nav">
            {if !empty($category->Unterkategorien)}
                {include file='snippets/categories_recursive.tpl' i=$i+1 categories=$category->Unterkategorien limit=$limit activeId=$activeId activeParents=$activeParents inPath=1}
            {else}
                {include file='snippets/categories_recursive.tpl' i=$i+1 categoryId=$category->kKategorie limit=$limit categories=null activeId=$activeId activeParents=$activeParents inPath=1}
            {/if}
        </ul>
    {/if}
</li>
{else}
    {if !empty($category->Unterkategorien)}
        {include file='snippets/categories_recursive.tpl' i=$i categories=$category->Unterkategorien limit=$limit activeId=$activeId activeParents=$activeParents}
    {else}
        {include file='snippets/categories_recursive.tpl' i=$i categoryId=$category->kKategorie limit=$limit categories=null activeId=$activeId activeParents=$activeParents}
    {/if}
{/if}
Zur Beachtung!!! Von dieser Änderung ist dann auch die Anzeige des Kategoriemenüs in der mobilen Ansicht betroffen. Dort kann dann nicht mehr in die übergeordneten Kategorien navigiert werden!
Um das zu verhindern müßte auch noch die /layout/header_xs_nav.tpl angepasst und dort in der Zeile mit dem include für die categories_recursive.tpl der Parameter inPath=1 ergänzt werden.
 
Zuletzt bearbeitet:

WhiteDragon

Aktives Mitglied
11. November 2014
99
0
Wow, das ist bisher die beste Lösung, die ich von allen hier gesehen habe.
Vielen Dank für deine wirklich ausführliche Hilfe. :)

Ein paar Rückfragen habe ich dazu - Ich hab das ganze Mal probiert:
1. Mit "... die /boxes/categories_recursive.tpl..." meinst du -> /snippets/categories_recursive.tpl ? Nur dort bin ich fündig geworden.
2. Nebenkategorien werden bei mir (ich meine) ab 5. Ebene nur nicht mehr angezeigt. Allgemein 1-2 Oberkategorie wird meistens bei mir nicht angeezeigt. Muss dazu noch was anderes eingestellt werden?
3. Mobil werden wir bei mir gar keine Kategorien mehr angezeigt, selbst wenn ich das einfüge auch nicht -> Parameter inPath=1.
 
Zuletzt bearbeitet:

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
Hallo,
ich habe das gerade nochmal mit einem 4.04er Shop getestet.
zu 1.: Ich meine natürlich die /snippets/categories_recursive.tpl
zu 2.: Nach der Templateänderung muss ggfs. der Templatecache gelöscht werden, damit alle Änderungen korrekt angezeigt werden.
zu 3.: Die Zeile 60 in /layout/header_xs_nav.tpl sollte dann so aussehen:
HTML:
{include file='snippets/categories_recursive.tpl' i=0 categoryId=0 limit=2 caret='right' inPath=1}
Kategorien werden in der mobilen Ansicht auch nur über das "Bürger"-Menü angezeigt. Dort sollten sie aber mit der Änderung normal angezeigt werden. Ggfs. auch hier nochmal den Templatecache leeren.
 
  • Gefällt mir
Reaktionen: bzng

3jojojo

Sehr aktives Mitglied
20. Januar 2016
783
45
Hallo,
ich habe das gerade nochmal mit einem 4.04er Shop getestet.
zu 1.: Ich meine natürlich die /snippets/categories_recursive.tpl
zu 2.: Nach der Templateänderung muss ggfs. der Templatecache gelöscht werden, damit alle Änderungen korrekt angezeigt werden.
zu 3.: Die Zeile 60 in /layout/header_xs_nav.tpl sollte dann so aussehen:
HTML:
{include file='snippets/categories_recursive.tpl' i=0 categoryId=0 limit=2 caret='right' inPath=1}
Kategorien werden in der mobilen Ansicht auch nur über das "Bürger"-Menü angezeigt. Dort sollten sie aber mit der Änderung normal angezeigt werden. Ggfs. auch hier nochmal den Templatecache leeren.

Klappt alles super und vielen Dank für die geniale Erweiterung. Nur ein Problem habe ich dabei. Auf mobilen Geäten wird das Navmenü nur noch die Oberkategorie angezeigt. Die Unterkategorien fehlen leider. Trotz der Erweiterung in punkt 3.
habe auch schon
{include file='snippets/categories_recursive.tpl' i=0 categoryId=0 limit=4 caret='right' inPath=1} probiert aber ohne Erfolg. KAnnst du mir sagen wieso?
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
OK, für die korrekte Funktion im Mobile-Menü muss das inPath=1 auch noch in der snippets/categories_offcanvas.tpl in Zeile 9 ergänzt werden.
HTML:
{include file='snippets/categories_recursive.tpl' i=0 categoryId=$result->current->kKategorie limit=2 caret='right' inPath=1}
 

SC-Holz

Aktives Mitglied
23. Mai 2016
2
0
Hallo,
Ich möchte die Kategorien weiter zum filtern benutzen. Im Moment ist es so das alle Kategorien ausblendet sind und nur noch die letzte aktive ersichtlich bleibt. Ist es möglich, dass in der letzten aktiven Unterkategorie (z.B. in Tiefe 1) + die selben nichtaktiven Unterkategorien (Tiefe 1) stehen bleiben?

zum Beispiel:

(Hauptkategorie): > Nussknacker -> ausgeblendet

(Unterkategorie Tiefe 1) >> gemusterte Nussknacker -> soll auch noch in der Kategorie-box ersichtlich sein
(Unterkategorie Tiefe 1) >>> einfarbige Nussknacker -> diese ist aktiv
(Unterkategorie Tiefe 1) >> Nussknacker zum personalisieren -> soll auch noch in der Kategorie-box ersichtlich sein


Ich benutze die Shopversion4.05 (Build: 2).
 
Zuletzt bearbeitet:

Baltazar80

Gut bekanntes Mitglied
18. Januar 2014
279
17
Hallo,

das Thema ist schon etwas älter, aber mich würde es auch interessieren, ob es möglich ist, dass in der aktuell gewählen Unterkategorie and noch die weiteren Unterkategorien mit angezeigt werden.
Aktuell ist is so, wenn ich eine Unterkategorie auswähle werden alle anderen Unterkategorien ausgeblendet, dann müsste man zurück navigieren um eine andere Unterkategorie auswählen zu können.

Wir benutzen aktuell die Lösung von FPrüfer, nur eben mit der genannten Problem.

Kategorie 1
- Unterkategorie 1
- Unterkategorie 2
- Unterkategorie 3
- Unterkategorie 4


Also wenn ich jetzt Unterkategorie 2 Auswähle, werden alle anderen Unterkategorien ausgeblendet, gibt es eine Möglichkeit diese weiterhin anzeigen zu lassen?
 
Zuletzt bearbeitet:

M.Dziurosz

Aktives Mitglied
31. Januar 2019
5
0
Hallo,

wenn ich dein Problem richtig verstanden habe dann probier mal die Zeile

{if isset($inPath) || $category->kKategorie == $activeId}

durch

{if isset($inPath) || $category->kKategorie == $activeId || $category->kKategorie == $activeParent->kKategorie}

zu ersetzen.


Viele Grüße
 

snot

Aktives Mitglied
5. April 2018
12
3
Vlt. hilft dann folgender Ansatz weiter:
Statt der /boxes/box_categories.tpl wird in einem Child-Template die /snippets/categories_recursive.tpl geändert.
Die Zeilen 43 - 57
HTML:
<li{if $category->kKategorie == $activeId || ((isset($activeParent) && isset($activeParent->kKategorie)) && $activeParent->kKategorie == $category->kKategorie)} class="active"{/if}>
    <a href="{$category->cURL}"{if $hasItems} class="nav-sub"{/if} data-ref="{$category->kKategorie}">
        {$category->cName}
        {if $hasItems}<i class="fa fa-caret-{$caret} nav-toggle pull-right"></i>{/if}
    </a>
    {if $hasItems}
        <ul class="nav">
            {if !empty($category->Unterkategorien)}
                {include file='snippets/categories_recursive.tpl' i=$i+1 categories=$category->Unterkategorien limit=$limit activeId=$activeId activeParents=$activeParents}
            {else}
                {include file='snippets/categories_recursive.tpl' i=$i+1 categoryId=$category->kKategorie limit=$limit categories=null activeId=$activeId activeParents=$activeParents}
            {/if}
        </ul>
    {/if}
</li>
wie folgt ändern:
HTML:
{if isset($inPath) || $category->kKategorie == $activeId}
<li{if $category->kKategorie == $activeId || ((isset($activeParent) && isset($activeParent->kKategorie)) && $activeParent->kKategorie == $category->kKategorie)} class="active"{/if}>
    <a href="{$category->cURL}"{if $hasItems} class="nav-sub"{/if} data-ref="{$category->kKategorie}">
        {$category->cName}
        {if $hasItems}<i class="fa fa-caret-{$caret} nav-toggle pull-right"></i>{/if}
    </a>
    {if $hasItems}
        <ul class="nav">
            {if !empty($category->Unterkategorien)}
                {include file='snippets/categories_recursive.tpl' i=$i+1 categories=$category->Unterkategorien limit=$limit activeId=$activeId activeParents=$activeParents inPath=1}
            {else}
                {include file='snippets/categories_recursive.tpl' i=$i+1 categoryId=$category->kKategorie limit=$limit categories=null activeId=$activeId activeParents=$activeParents inPath=1}
            {/if}
        </ul>
    {/if}
</li>
{else}
    {if !empty($category->Unterkategorien)}
        {include file='snippets/categories_recursive.tpl' i=$i categories=$category->Unterkategorien limit=$limit activeId=$activeId activeParents=$activeParents}
    {else}
        {include file='snippets/categories_recursive.tpl' i=$i categoryId=$category->kKategorie limit=$limit categories=null activeId=$activeId activeParents=$activeParents}
    {/if}
{/if}
Zur Beachtung!!! Von dieser Änderung ist dann auch die Anzeige des Kategoriemenüs in der mobilen Ansicht betroffen. Dort kann dann nicht mehr in die übergeordneten Kategorien navigiert werden!
Um das zu verhindern müßte auch noch die /layout/header_xs_nav.tpl angepasst und dort in der Zeile mit dem include für die categories_recursive.tpl der Parameter inPath=1 ergänzt werden.

ich habe das gerade getestet, es funktioniert, jedoch kommt es zu Performance Problemen da folgendes SQL Query ca. 600x ausgeführt wird wenn eine Kategorie aufgerufen wird:

SQL:
SELECT
  tkategorie.kKategorie,
  tkategorie.cName,
  [..]
FROM
  tkategorie
  LEFT JOIN tkategoriesprache ON tkategoriesprache.kKategorie = tkategorie.kKategorie
  AND tkategoriesprache.kSprache = ?
  LEFT JOIN tkategoriesichtbarkeit ON tkategorie.kKategorie = tkategoriesichtbarkeit.kKategorie
  AND tkategoriesichtbarkeit.kKundengruppe = ?
  LEFT JOIN tseo ON tseo.cKey = ?
  AND tseo.kKey = tkategorie.kKategorie
  AND tseo.kSprache = ?
  LEFT JOIN tkategoriepict ON tkategoriepict.kKategorie = tkategorie.kKategorie
WHERE
  tkategoriesichtbarkeit.kKategorie IS NULL
  AND tkategorie.kOberKategorie = ?
GROUP BY
  tkategorie.kKategorie
ORDER BY
  tkategorie.nSort,
  tkategorie.cName

Die Querys kommen alle aus dem else:
Code:
{else}
    {if !empty($category->Unterkategorien)}
        {include file='snippets/categories_recursive.tpl' i=$i categories=$category->Unterkategorien limit=$limit activeId=$activeId activeParents=$activeParents}
    {else}
        {include file='snippets/categories_recursive.tpl' i=$i categoryId=$category->kKategorie limit=$limit categories=null activeId=$activeId activeParents=$activeParents}
    {/if}
{/if}

Wenn dieser gestrichen wird passt es. Wofür war dieser denn gedacht?
 
Zuletzt bearbeitet:

olli33

Gut bekanntes Mitglied
27. November 2008
288
10
Hallo, ich würde mich da gerne mastertango anschließen bzw. das Thema nochmal nach oben holen. Wie kann man beim NOVA Template die linke Kategoriebox/Kategoriebaum (links) so anzeigen, dass nur die aktive Kategorie plus Unterkategorien angezeigt werden.
 

olli33

Gut bekanntes Mitglied
27. November 2008
288
10
Hallo ich möchte das Thema nochmal hoch schieben, da ich es selber nicht lösen konnte. Gerne bezahle ich auch für die Anpassung der snippets/categories_recursive.tpl. Angebote gerne auch per PN. Danke
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
8.597
2.672
Berlin
Firma
css-umsetzung
Ich kann das, wäre dann nur noch zu klären ob der komplette Kategorie Baum also ab Level 0 oder ob nur das direkte parent Level angezeigt werden soll.
Einfach bei mir melden, dann sprechen wir über die Umsetzung.
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
8.597
2.672
Berlin
Firma
css-umsetzung
Ich hab da eine Lösung hinbekommen die rein Template Basierend ist, wer das also eines Tages noch jemand braucht um seine
Linkstruktur in der Sidebar klein und übersichtlich zu gestalten kann sich gerne bei mir melden.

Ich werde diese Lösung nicht öffentlich posten.
 
Ähnliche Themen
Titel Forum Antworten Datum
QR-Code auf der Rechnung gibt 100-fachen Betrag des eigentlichen Rechnungsbetrages aus JTL-Wawi 2.0 5
Fehlermeldung beim Einlesen der Buchungen in JTL Fibu JTL-Wawi 2.0 2
Neu Wird irgendwo in der Datenbank geloggt welcher WMS-Mobile Benutzer mit dem MDE-Gerät einen Auftrag, bzw. Pickliste gepickt hat? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Gibt es in der WaWi-Datenbank einen Zeitstempel, der anzeigt wann ein Kunde sich in einem bestimmten Shop registriert hat? User helfen Usern - Fragen zu JTL-Wawi 3
Neu Amazon.com - kein Abgleich der Bestände Wawi 1.11.9 Amazon-Anbindung - Fehler und Bugs 0
Name der Versandarten wird im Auftrag sporadisch nicht mehr angezeigt (2.0.3) JTL-Wawi 2.0 2
Neu Wawi 1.11. Amazon Rechnungen (extern) in der Kundenansicht verschwunden ?! User helfen Usern - Fragen zu JTL-Wawi 2
Neu Der wahrscheinlich östlichste JTL Servicepartner: Standortvorteil, faire Preise und vieles mehr Dienstleistung, Jobs und Ähnliches 16
Neu Eigener Export - Kunden individuelle Preise + verfügbarer Bestand + VK netto der Kundengruppe User helfen Usern - Fragen zu JTL-Wawi 6
Neu Rechnungen zeigen Paypal Text an, obwohl er in der Vorlage nicht ausgewählt ist JTL-Wawi 2.0 3
Updatezwang beim öffnen der WAWI JTL-Wawi 1.6 13
Neu Produktionsaufträge tauchen nicht in der Workbench auf JTL-Plan&Produce - Fehler und Bugs 2
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
Neu Paypal 2.2.1; Fehler "Der Zahlungsanbieter hat eine Anmeldung gefordert" Plugins für JTL-Shop 0
Neu Sortierung der Variationswerte funktioniert nicht mehr Shopify-Connector 6
Neu Wert aus „Eigenes Feld“ eines Artikels im Lieferschein unter der Artikelbezeichnung anzeigen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Rabatte aus dem JTL-Shop werden in der Wawi nur als Netto-Preis übernommen, Rabatt % gehen verloren Onlineshop-Anbindung 0
Freie Felder in der Artikelliste anzeigen JTL-Wawi 2.0 3
ändern von Servernamen nach Neuinstallation von SQL und Verbindung mit neuem Server in der Wawi JTL-Wawi 2.0 2
Neu Erstellung der Sitemap bei WaWi Abgleich funktioniert nicht Allgemeine Fragen zu JTL-Shop 0
Neu Unterschiedliche Abnahmeintervalle von Variationskombinationen in der Warenkorbmatrix Templates für JTL-Shop 0
Neu Betrag auf der Rechnung nach Rechnungskorrektur User helfen Usern - Fragen zu JTL-Wawi 1
Neu PDF Anhänge in der Bestellbestätigung anhängen missglückt JTL-Shop - Fehler und Bugs 1
Neu Anzahl der URLs in der Sitemap ändern Allgemeine Fragen zu JTL-Shop 3
Neu Ab welcher JTL Wawi Version ist der OnPremise REST API Endpoint POST /v2/returns oder POST /v1/returns für Create Return verfügbar? Schnittstellen Import / Export 0
Neu ⚠️📦 ACHTUNG: Abkündigung der DHL-Schnittstelle zum 15.06.2026 News, Events und Umfragen 0
Neu Telemetrie-Datenerfassung in JTL-Shop 5.7.0: Bitte um Klarstellung der DSGVO-relevanten Aspekte Allgemeine Fragen zu JTL-Shop 5
Frage zur Speicherung der Produktbilder JTL-Wawi 1.11 1
Neu Der Inhalt / Text ist verschwunden – ist das ein Fehler JTL-Shop - Fehler und Bugs 0
Plattformabgleich Shop löschen - Wo ist das in der MySQL DB? JTL-Wawi 2.0 4
Anzeige der Variantenartikel JTL-Wawi 1.11 0
Neu Workflows speichern z.B. Rechnungen nicht mehr seid der 2.01 User helfen Usern - Fragen zu JTL-Wawi 1
Neu Ein Artikel in der Kategorie Allgemeine Fragen zu JTL-Shop 5
Neu Widerrufsbutton: Jeder, der den Button betätigt, kann das Widerrufsformular ausfüllen und absenden - auch ohne Bestellung? Allgemeine Fragen zu JTL-Shop 94
Neu Komma aus Produktbezeichnung soll als Bindestrich in der URL sein Allgemeine Fragen zu JTL-Shop 1
Retouren - Bearbeitung der Adressdaten JTL-Wawi 2.0 4
Update auf Shop 5.5.0 von 5.4.1 ist der Shop nicht mehr erreichbar Upgrade JTL-Shop4 auf JTL-Shop5 4
Neu Lieferadresse in PayPal-Transaktion weicht von der in der Wawi ab Plugins für JTL-Shop 0
Häufiges Aufhängen - vermutlich Probleme mit der Datenbank JTL-Wawi 2.0 13
Neu Wichtige Info: Abkündigung der DHL-Schnittstelle zum 31.05.2026 News, Events und Umfragen 0
Neu Fehler beim Update der Datenbank von 1.11.7 auf 2.0.1 JTL-Wawi - Fehler und Bugs 7
2.0.0: Aufruf der Plattform - Logbücher führt zu Crash der Wawi JTL-Wawi 2.0 0
Neu Falsche Berechnung der Kassen im Kundencenter - Multikasse noch aktiv Smalltalk 0
Probleme bei der Verbindung zur Datenbank JTL-Wawi 2.0 12

Ähnliche Themen