in der linken Box nur Unterkategorie anzeigen

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
524
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
524
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
782
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
524
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
271
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
260
6
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
260
6
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
7.346
2.004
Berlin
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
7.346
2.004
Berlin
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
Neu Nachforschungaufträge der DPD mit Worker automatisieren JTL-ShippingLabels - Fehler und Bugs 0
Neu Inhalt / Menge aus der Wawi im JTL Shop anzeigen / ohne Funktion ? Allgemeine Fragen zu JTL-Shop 0
Neu Preise der Kinderartikel aktualisieren Arbeitsabläufe in JTL-Wawi 3
Neu Preise der Variationen über Ameise anpassen, aber wie ? JTL-Ameise - Ideen, Lob und Kritik 3
MHD in der Pickliste anzeigen JTL-Wawi 1.9 1
Farben der Artikel in der Artikelverwaltung (F2) JTL-Wawi 1.9 2
Extern versendete Bestellungen, Aktualisierung der Tracking-Nummer in JTL fehlt JTL-Wawi 1.9 3
Neu Validierung der Telefonnummer JTL-Workflows - Fehler und Bugs 0
Neu Seriennummer der TSE Einrichtung / Updates von JTL-POS 0
Neu MHD in der Inventur liste aber nicht im Artikel JTL-Wawi - Fehler und Bugs 0
Neu Slider-Vorschau Bilder auf der Artikeldetail-Seite werden in der mobilen Version nicht angezeigt Allgemeine Fragen zu JTL-Shop 0
Lieferzeit wird auf der Artikeldetailseite nicht angezeigt Einrichtung JTL-Shop5 7
Neu Was passiert wenn ich Amazon Aufträge, Lieferscheine und Rechnungen per SQL aus der WAWI-Datenbank lösche? User helfen Usern - Fragen zu JTL-Wawi 0
Titel der Variationskombinationen JTL-Wawi 1.8 4
Artikel Merkmale in der Rechnung anzeigen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 10
Neu ACHTUNG WARNUNG: Falscher USt-Betrag beim Export mit der Ameise JTL-Wawi - Fehler und Bugs 4
Otto Market Übermittlung der GLS Sendungsnummer JTL-Wawi 1.9 0
Neu Sortiernummer der Hersteller seit Update auf 1.9.6.5 durcheinander User helfen Usern - Fragen zu JTL-Wawi 14
Neu Priority in der Sitemap Betrieb / Pflege von JTL-Shop 2
Neu Emails senden aus der Wawi an Bestellungen via Gastkonto (JTL Wawi 1.5.55.5 / JTL Shop 4.05) Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1
Neu Der Amazon Bestand wird nicht übernommen/gespeichert. Worker setzt den vollen Lagerbestand wieder ein. JTL-Wawi - Fehler und Bugs 0
Neu GPSR Zuordnung in der Ameise Wawi Version 1.5 Probleme Funktionsattribut ID User helfen Usern - Fragen zu JTL-Wawi 3
Amazon Lister Problem bei der Erstellung von Varianten-Produkten JTL-Wawi 1.9 0
Neu Berichte / Standard Analysen in der WaWi User helfen Usern - Fragen zu JTL-Wawi 0
Neu Wie Kunden löschen, der noch nie bestellt hat? User helfen Usern - Fragen zu JTL-Wawi 2
Änderung der Lieferadresse einer Verkaufsbestellung über die JTL-Wawi API JTL-Wawi 1.9 0
Neu Whatsapp Kontakt auf der Detailseite Allgemeine Fragen zu JTL-Shop 4
Auftragsfenster läst sich nicht in der Höhe Verändern JTL-Wawi 1.9 9
Neu Darstellung der Medeindaten Allgemeine Fragen zu JTL-Shop 0
Neu Prozessablauf WMS Start - Wo ist der Denkfehler? Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Neu Artikel Leichen bereinigen in der Datenbank Betrieb / Pflege von JTL-Shop 3
Neu Probleme beim Übertragen der Sendungsnummern an AMAZON Amazon-Anbindung - Fehler und Bugs 3
Neu Änderung der Lieferadresse einer Verkaufsbestellung über die JTL-Wawi API User helfen Usern - Fragen zu JTL-Wawi 0
Neu Newsletter-anmeldung wird nicht auf der Website angezeigt Allgemeine Fragen zu JTL-Shop 0
JTL Wawi Kunden Kommentar hinzufügen, der auch im JTL Pos erscheint. JTL-Wawi 1.9 0
Gültigkeit der Gutscheine zum Jahresende terminieren JTL-Vouchers - Ideen, Lob und Kritik 2
Neu Optimierung der Laufwege Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Seit kurzen vermehrt Spamanfragen in der Shopsuche. Einrichtung JTL-Shop5 1
Neu Problem bei der Anzeige von Hinweistexten für Produkte einer bestimmten Kategorie im NOVA Template Allgemeine Fragen zu JTL-Shop 1
Neu Probleme mit dem MegaMenü in der Mobile Version Allgemeine Fragen zu JTL-Shop 0
JTL Shipping: Artikelgewicht und Zusatzgewicht aus der Versandeinstellung wird nicht addiert JTL-ShippingLabels - Ideen, Lob und Kritik 2
Neu PayPal Checkout -> Der Zahlungsanbieter hat eine erneute Bestätigung der Kaufsumme angefordert Plugins für JTL-Shop 0
Neu GPSR: Zuordnung der Verantw. Person zum meinen Artikeln JTL-Ameise - Fehler und Bugs 10
Neu WAWI 1.9.6.5 stornierte VCS Bestellung wird in der Wawi noch unter auszuliefernde Aufträge gelistet. eBay-Anbindung - Fehler und Bugs 0
GPRS Fehler beim Rendering der Attribute JTL-Wawi 1.9 9
Neu Kann man in JTL-Wawi die Versandkosten basierend auf der Entfernung automatisch berechnen? JTL-ShippingLabels - Fehler und Bugs 1
Neu Umlagerungsnummer FBA Historie in der DB User helfen Usern - Fragen zu JTL-Wawi 0
Neu Fehler beim Bearbeiten der E-Mail-Vorlage "Bestellbestätigung" JTL-Shop - Fehler und Bugs 0
Neu Export der Shop-Artikel JTL-Ameise - Fehler und Bugs 2
Neu Artikel werden als online in der WAWI angezeigt sind es aber nicht! Shopware-Connector 0

Ähnliche Themen