Neu JTL Shop5 ... Merkmalwerte mit 0 Treffer ausblenden

wawi-dl

Sehr aktives Mitglied
29. April 2008
6.725
813
Hallo,

wir wollen im JTL Shop 5 komplett mit Merkmalen arbeiten.

Die Merkmalübersicht befindet sich links in der Leiste, wenn ich eine Oberkategorie geöffnet habe, sehen wir alle Merkmale und Merkmalwerte.
Sobald ich nun aber ein Merkmalwert angeklickt habe, möchte ich alle weiteren Merkmalwerte mit "0" Treffer ausblenden.

Wir haben die Option Trefferanzahl bei Merkmalfiltern anzeigen (Einstellung: 1787) aktiviert "Trefferanzahl auch bei möglicher Mehrfachauswahl anzeigen (performancelastig)", was sehr performancelastig sein soll und wir auch bemerkt haben.
Hier konnte ich aber im Template einen "display: none" setzen, dass alle Werte mit 0 verschwinden, klappt sehr gut ... Performance aber bescheiden.


Warum ist denn dies überhaupt so performancelastig??? Wir würden in den sauren Apfel beißen uns sagen, OK wir verzichten auf die Mengenanzahl, leider greift aber dann unsere Anpassung oben nicht mehr.
Wir kann ich also Merkmalwerte filtern, wenn es keine Treffer dazu gibt?

Danke


/snippets/filter/characteristic.tpl (Zeile 31)
{extends file="{$parent_template_path}/snippets/filter/characteristic.tpl"}

{block name='snippets-filter-characteristic'}
{$is_dropdown = ($Merkmal->cTyp === 'SELECTBOX')}
{$limit = $Einstellungen.template.productlist.filter_max_options}
{$collapseInit = false}
{$showFilterCount = $Einstellungen.navigationsfilter.merkmalfilter_trefferanzahl_anzeigen !== 'N'
&& !($Einstellungen.navigationsfilter.merkmalfilter_trefferanzahl_anzeigen === 'E' && $Merkmal->getData('isMultiSelect'))}
<div class="filter-search-wrapper">
{block name='snippets-filter-characteristic-include-search-in-items'}
{include file='snippets/filter/search_in_items.tpl' itemCount=count($Merkmal->getOptions()) name=$Merkmal->getName()}
{/block}
{if $Merkmal->getData('cTyp') === 'BILD'}
<ul class="nav nav-filter-has-image">
{/if}
{foreach $Merkmal->getOptions() as $attributeValue}
{$attributeImageURL = null}
{if ($Merkmal->getData('cTyp') === 'BILD' || $Merkmal->getData('cTyp') === 'BILD-TEXT')}
{$attributeImageURL = $attributeValue->getImage(\JTL\Media\Image::SIZE_XS)}
{if $attributeImageURL|strpos:$smarty.const.BILD_KEIN_ARTIKELBILD_VORHANDEN !== false
|| $attributeImageURL|strpos:$smarty.const.BILD_KEIN_MERKMALWERTBILD_VORHANDEN !== false}
{$attributeImageURL = null}
{/if}
{/if}
{if $is_dropdown}
{block name='snippets-filter-characteristics-dropdown'}
{dropdownitem
class="{if $attributeValue->isActive()}active{/if} filter-item"
href="{if !empty($attributeValue->getURL())}{$attributeValue->getURL()}{else}#{/if}"
title="{if $Merkmal->getData('cTyp') === 'BILD'}{$attributeValue->getValue()|escape:'html'}{/if}"
style="{if $attributeValue->getCount()==0}display: none;{/if}"
}
<div class="box-link-wrapper">
<i class="far fa-{if $attributeValue->isActive()}check-{/if}square snippets-filter-item-icon-right"></i>
{if !empty($attributeImageURL)}
{image lazy=true webp=true
src=$attributeImageURL
alt=$attributeValue->getValue()|escape:'html'
class="vmiddle"
}
{/if}
<span class="word-break filter-item-value">{$attributeValue->getValue()|escape:'html'}</span>
{if $showFilterCount}
{badge variant="outline-secondary"}{$attributeValue->getCount()}{/badge}
{/if}
</div>
{/dropdownitem}
{/block}
{else}
{if $limit != -1 && $attributeValue@iteration > $limit && !$collapseInit}
{block name='snippets-filter-characteristics-more-top'}
<div class="collapse {if $Merkmal->isActive()} show{/if}" id="box-collps-filter-attribute-{$Merkmal->getValue()}" aria-expanded="false" role="button">
<ul class="nav {if $Merkmal->getData('cTyp') !== 'BILD'}flex-column{/if}">
{$collapseInit = true}
{/block}
{/if}
{block name='snippets-filter-characteristics-nav'}
{if {$Merkmal->getData('cTyp')} === 'TEXT'}
{block name='snippets-filter-characteristics-nav-text'}
{link class="{if $attributeValue->isActive()}active{/if} filter-item"
href="{if !empty($attributeValue->getURL())}{$attributeValue->getURL()}{else}#{/if}"
title="{$attributeValue->getValue()|escape:'html'}"
rel="nofollow"
}
<div class="box-link-wrapper" {if $attributeValue->getCount()==0}style="display: none;"{/if}>
<i class="far fa-{if $attributeValue->isActive()}check-{/if}square snippets-filter-item-icon-right"></i>
{if !empty($attributeImageURL)}
{image lazy=true webp=true
src=$attributeImageURL
alt=$attributeValue->getValue()|escape:'html'
class="vmiddle"
}
{/if}
<span class="word-break filter-item-value">{$attributeValue->getValue()|escape:'html'}</span>
{if $showFilterCount}
{badge variant="outline-secondary"}{$attributeValue->getCount()}{/badge}
{/if}
</div>
{/link}
{/block}
{elseif $Merkmal->getData('cTyp') === 'BILD' && $attributeImageURL !== null}
{block name='snippets-filter-characteristics-nav-image'}
{link href="{if !empty($attributeValue->getURL())}{$attributeValue->getURL()}{else}#{/if}"
title="{if $showFilterCount}{$attributeValue->getValue()|escape:'html'}: {$attributeValue->getCount()}{else}{$attributeValue->getValue()|escape:'html'}{/if}"
data=["toggle"=>"tooltip", "placement"=>"top", "boundary"=>"window"]
class="{if $attributeValue->isActive()}active{/if} filter-item"
rel="nofollow"
}
{image lazy=true webp=true
src=$attributeImageURL
alt=$attributeValue->getValue()|escape:'html'
title="{if $showFilterCount}{$attributeValue->getValue()|escape:'html'}: {$attributeValue->getCount()}{else}{$attributeValue->getValue()|escape:'html'}{/if}"
class="vmiddle filter-img"
}
<span class="d-none filter-item-value">
{$attributeValue->getValue()|escape:'html'}
</span>
{/link}
{/block}
{else}
{block name='snippets-filter-characteristics-nav-else'}
{link href="{if !empty($attributeValue->getURL())}{$attributeValue->getURL()}{else}#{/if}"
title="{if $showFilterCount}{$attributeValue->getValue()|escape:'html'}: {$attributeValue->getCount()}{else}{$attributeValue->getValue()|escape:'html'}{/if}"
class="{if $attributeValue->isActive()}active{/if} filter-item"
rel="nofollow"
}
<div class="box-link-wrapper" {if $attributeValue->getCount()==0}style="display: none;"{/if}>
{if !empty($attributeImageURL)}
{image lazy=true webp=true
src=$attributeImageURL
alt=$attributeValue->getValue()|escape:'html'
title="{if $showFilterCount}{$attributeValue->getValue()|escape:'html'}: {$attributeValue->getCount()}{else}{$attributeValue->getValue()|escape:'html'}{/if}"
class="vmiddle filter-img"
}
{/if}
<span class="word-break filter-item-value">
{$attributeValue->getValue()|escape:'html'}
</span>
{if $showFilterCount}
{badge variant="outline-secondary"}{$attributeValue->getCount()}{/badge}
{/if}
</div>
{/link}
{/block}
{/if}
{/block}
{/if}
{/foreach}
{if !$is_dropdown && $limit != -1 && $Merkmal->getOptions()|count > $limit}
{block name='snippets-filter-characteristics-more-bottom'}
</ul>
</div>
<div class="snippets-filter-show-all">
{button variant="link"
role="button"
data=["toggle"=> "collapse", "target"=>"#box-collps-filter-attribute-{$Merkmal->getValue()}"]}
{lang key='showAll'}
{/button}
</div>
{/block}
{/if}
{if $Merkmal->getData('cTyp') === 'BILD'}
</ul>
{/if}
</div>
{/block}
 

golvreven

Gut bekanntes Mitglied
1. Oktober 2020
273
21
Hallo zusammen,

meine Frage geht auch in die Richtung: Wie kann ich verhindern, dass Nutzer bei der Filterung auf Kombinationen stoßen, zu denen es keine Ergebnisse gibt?

Viele Grüße
g.
 

golvreven

Gut bekanntes Mitglied
1. Oktober 2020
273
21
Hallo Sirko,

das wusste ich nicht. Ist aber auch recht aktuell (07.04.). Als Nutzer ist es sehr frustrierend, wenn ich mich durch die Merkmale klicke und ständig "0 Ergebnisse" angezeigt bekomme. Da breche ich das Ganze nach kurzer Zeit ab und zweifle an der Sinnhaftigkeit der Filterfunktion.

Viele Grüße
g.
 

ple

Sehr aktives Mitglied
20. August 2019
869
182
Mh, also bei mir ist das so, aber ich kann dir nicht genau sagen, ob es am Merkmalplugin liegt oder Kategorieplugin von @zaxxo oder meine Templateänderungen (ist noch nicht optimal, ich weiß) . Oder ich habe dein Problem falsch verstanden.
Hier mal ein Beispiel
https://numiverse.com/Edelmetalle
- Ohne ein Feingewicht auszuwählen stehen somit alle Feingewichte der Artikel zum Filtern zur Verfügung.
- Filtert man jetzt nach Nominal mit 1/4 Dollar, dann kann man unter Feingewicht nur noch die anklicken, die auch gelistet werden,.

Oder hier,
https://numiverse.com/Muenzen_2
Filtert man Nominal mit 1 Dollar, verschwinden alle anderen Filter.

Hier mal die Plugins, die ich im Einsatz habe mit dem Shop 5.3.3
https://www.zaxxo.de/Artikel-aus-Unterkategorien-auch-in-Oberkategorien-anzeigen
https://www.zaxxo.de/Erweiterte-Merkmale
 

golvreven

Gut bekanntes Mitglied
1. Oktober 2020
273
21
Hallo ple,

mir geht es auch um kombiniere Filtermerkmale. In etwa so: Ein Kunde filtert in der Kategorie Schuhe nach Schuhen mit Klettverschluss. Und kann diesen Filter weiterhin mit dem Filter Schnürsenkellängen kombinieren. Was ja keinen Sinn macht, weil 0 Ergebnisse dahinterstehen.

Viele Grüße
g.
 

ple

Sehr aktives Mitglied
20. August 2019
869
182
Wäre doch aktuell bei mir so. Man filtert nach 1/4 Dollar, unter Feingewicht oder Land verschwinden alle anderen Merkmal, die die Artikel halt nicht haben. Wäre ja blöd wenn er Land Kanada auswählen könnte, es aber keine kombination gibt.
Oder ich hab ne Brett vorm Kopf.
 

golvreven

Gut bekanntes Mitglied
1. Oktober 2020
273
21
Bei uns ist es leider nicht so. Die Filtermerkmale, die zu 0 Ergebnissen führen, bleiben auswählbar.
 

wawi-dl

Sehr aktives Mitglied
29. April 2008
6.725
813
wir haben nur die 2. Option gewählt, wir haben das damals mit Template Snacky integrieren lassen, weil diese Option richtig Power braucht vom Server
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Shop 5.7.2 - JTL PayPal Checkout legt alles lahm JTL-Shop - Fehler und Bugs 1
JTL-Ameise 2.04 - Export Rechnungen csv - unvollständig JTL-Wawi 2.0 12
Neu Belege aus JTL Wawi zu Lexoffice Schnittstellen Import / Export 4
Neu Varianten die nicht online in JTL geschaltet sind werden trotzdem zu Shopify geladen Shopify-Connector 2
Neu Gesucht: JTL-Systempartner/Freelancer mit Erfahrung in Personalisierungs-/Gravur-Fulfillment Dienstleistung, Jobs und Ähnliches 2
Neu JTL Stammtisch Stuttgart Messen, Stammtische und interessante Events 0
Neu Copy/Paste Abstürze seit JTL-Wawi 2.0.5 User helfen Usern - Fragen zu JTL-Wawi 4
Gelöst: Störung bei LInk11 - JTL- Shops teilweise nicht erreichbar Störungsmeldungen 1
JTL Update auf 1.9 , danach Import Kundenspezifrische Preise velerhaft JTL-Wawi 1.9 0
Wie übernehme ich Artikelnamen von JTL in den neuen Kaufland Niederlande-Verkaufskanal? JTL-Wawi 1.11 1
Neu Wie stelle ich Retouren in JTL für DPD ein? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu JTL Wawi 1.11.11 - Zahlungsabgleich bei FYRST Bank verlangt immer Passwort User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL Shop Plugin - BD Automatisierter Widerruf (Von Händler für Händler - Schluss mit Mail-Chaos & Spam-Sorgen!) Plugins für JTL-Shop 0
Neu Der wahrscheinlich östlichste JTL Servicepartner: Standortvorteil, faire Preise und vieles mehr Dienstleistung, Jobs und Ähnliches 16
Neu Welche JTL Shop Plugins oder kleinen Hilfstools würden euch im Alltag wirklich helfen? Plugins für JTL-Shop 0
Neu JTL ShippingLabels - Meldungen JTL-ShippingLabels - Fehler und Bugs 7
Neu Beta-Tester gesucht: Produktdaten aus Artikelfotos schneller für JTL/CSV vorbereiten Dienstleistung, Jobs und Ähnliches 0
Neu oAuth Credentials Login mit JTL .. WO? User helfen Usern 1
Neu Installationsdatei für JTL‑Wawi 1.9.6.5 Installation von JTL-Wawi 2
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
Neu JTL Wawi 2.0 oder höher WooCommerce-Connector 0
Changelog jtl Wawi 2.0.5 JTL-Wawi 2.0 10
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
JTL 5.7.1 Widerrufsformular massiver SPAM Einrichtung JTL-Shop5 3
JTL Wawi 1.11.xx langsam unbenutzbar! JTL-Wawi 1.11 4
Neu Plugin: JTL Exportformat Google Shopping gibt <g:google_product_category> unter Shop 5.7.1 und Wawi 2.0.4 nicht aus Plugins für JTL-Shop 1
Neu Widerrufsbutton für JTL-Shop 4 Allgemeine Fragen zu JTL-Shop 17
Neu Rabatte aus dem JTL-Shop werden in der Wawi nur als Netto-Preis übernommen, Rabatt % gehen verloren Onlineshop-Anbindung 0
JTL Anmeldung letzter Benutzer JTL-Wawi 1.11 3
Test-Kunden als solche in JTL markieren, um die Auswertungen sauber zu halten? JTL-Wawi 1.11 1
Neu Ab Wawi 1.10 - JTL.Wawi.Pos.exe direkt ohne JTL-Administrator starten? Allgemeine Fragen zu JTL-POS 2
Neu JTL-Shop - Wechsel von Test zum Livebetrieb - was beachten ? Installation / Updates von JTL-Shop 2
JTL APP - Fehlermeldung nach Update auf Wawi 1.11. JTL-Wawi App 6
Eigener Drittshop-Connector (jtl/connector 5.3): valide Variationskombinationen werden mit „besitzt keine Variationen" nicht gesendet JTL-Wawi 1.11 1
JTL Wawi 1.11. - Fenstergröße - Artikel auf Einkaufsliste setzen JTL-Wawi 1.11 13
Neu Problem mit dem JTL-Connector – Invalid Shopify connection credentials. Shopify-Connector 3
Neu JTL Artikelanlage mit KI beschleunigen User helfen Usern - Fragen zu JTL-Wawi 2
Neu JTL-Wawi Shopabgleich per E-Mail überwachen (Warnungen & Fehler) Onlineshop-Anbindung 1
Neu Helfen Lösungen wie Unicorn wirklich, um die teuren Preise bei JTL zu vermeiden? Amazon-Anbindung - Ideen, Lob und Kritik 1
Neu Meta Shop seit September 2025: JTL-Lösung für neue Checkout-URL gesucht Allgemeine Fragen zu JTL-Shop 0
Neu Bug? Führende Nullen bei Sendungsnummern verschwinden in JTL-Wawi 2.0.3 JTL-ShippingLabels - Fehler und Bugs 1
DPD Cloud Labeldruck auf Zebra LP 2844-Z seit Update auf JTL-Wawi 1.11.x fehlerhaft JTL-Wawi 1.11 3
JTL nach Update auf 2.0.3 im Bereich „Kunden“ extrem langsam JTL-Wawi 2.0 1
Neu DHL 4.0 mit JTL-ShippingLabels funktioniert nicht JTL-ShippingLabels - Fehler und Bugs 2
JTL-Wawi sucht falschen ShopType nach Gambio-Update JTL-Wawi 1.7 2
Neu JTL Lizensserver ist nicht erreichbar eBay-Anbindung - Fehler und Bugs 0
Nach update 1.8>1.11 Kein Mandant in JTL-Wawi gefunden JTL-Wawi 1.11 5
Angebliche externe Aufträge "für Rechnungserstellung freigeben" und Rechnungen erstellen. Gibt es dazu eine akzeptable Erklärung von JTL? JTL-Wawi 1.11 1
Rabatt Coupons in Verbindung mit Staffelpreisen - JTL 1.11.9, JTL Shop JTL-Wawi 1.11 0
Neu JTL → Shopify Connector: MappingTablesException / „Endpoint id is empty“ – betroffene Artikel aus Logs per SQL finden Shopify-Connector 2

Ähnliche Themen