Offen Merkmalfilter als Slider (bei Zahlenwerten)?

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
Hallo,

wir richten den Shop ein und haben in einer Kategorie viele Artikel mit unterschiedlichen Durchmessern und Längen. Da würde ich gerne einen Slider (ein)bauen, um nicht nur eine spezifische Länge zu filtern, sondern eine Range.

Ich konnte in der box_filter_merkmale.tpl auch schon eine Abfrage machen, das er mit einen Jquery-Slider für genau diese beiden Merkmale (ein einfaches {if $Merkmal->cName == "Länge"}) einen Range-Slider anlegt.
Der Slider ist da, die korrekten Werte habe ich auch als Minimum und Maximum drin, für den onchange()-Event brauche ich dann eine Suche. Ich erhalte auch eine Liste aller Merkmalwerte, die zwischen den unteren und oberen Sliderwert liegen. Soweit alles gut...

Nur wie schaffe ich es, daß mein Shop dann bei einem onchange()-Event eine passende Suche durchführt? Hat da jemand einen Tipp für mich?

Exakter: Mir ist im Moment nicht klar, wie ich die Suche durchführe.

Beim Preisfilter wird per URL /navi.php&pf=1_5 der untere Werte (1) und obere Wert (5) angegeben, per "_" getrennt.
Wie mache ich das mit den Merkmalen?


Danke im Voraus,
Olli
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Mhhh,

ich habe nun per SQL die IDs der "kArtikel" aus der Tabelle "tartikel" für meine gefilterten Ergebnisse erhalten und wollte nun per {get_product_list} eine Liste der Artikel generieren.
Also flux das Beispiel Template HowTo's - Template Entwicklung - JTL Developer Base genommen und mit dem Paramter kArtikel versehen, aber das klappt nicht. Selbst bei einem einzelnen Produkt :(

Beispiel: Ich erhalte nur ein Suchergebnis, die kArtikel 31.

Rufe ich {get_product_list nLimit=3 nSortierung=100 kArtikel=31 cAssign="myProduct"} auf, so zeigt er mir 3 Produkte, aber nicht das, welches ich angebe...selbst wenn ich das statisch in die TPL eingebe zu Testzwecken.

Wie würde ich denn - wenn das mal klappt - mehrere kArtikel angeben?

Ich nutze JTL Shop 3.19.
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.477
289
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Du müsstest einen GET Request absenden und die Antwort dann in den DOM hängen.
Beispiel: Bodys & Nachtwäsche
Die Konsole öffnen und nach unten scrollen, dann siehst was ich meine.
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Hi,

erstmal danke für deine Antwort, aber ich stehe ehrlich auf dem Schlauch :-/
Ich kann auf deinem Link nicht sehen, was Du genau meinst und ich verstehe auch gerade nicht, welche Url ich per GET aufrufen muss.
Wenn Du mir da noch ein wenig Hilfe zukommen lässt wäre ich sehr froh :)

VG,
Olli
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.477
289
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Beispiel:

Code:
$.get("http://www.domain.tld/navi.php&pf=1_5", function(returndata){
    result = $("ul[class=styled_view]", $(returndata)).html();
    $("ul[class=styled_view]").html(result);
});

Das holt sich die Artikel die deiner Preisspanne entsprechen, lädt sie in den DOM und ersetzt dabei die bestehende Artikelliste.
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Ah, okay, per AJAX die navi.php aufgerufen habe ich schon versucht; das ich per navi.php?k=xxx eine Artikelliste der Kategorie mit ID xxx erstellen kann habe ich schon herausgefunden.
Ebenso kann ich mit navi.php?a=xxx den Artikel selbst mit der kArtikel xxx aufrufen.
Mit pf und mf als Parameter habe ich auch schon rumgespielt.


Was ich nicht schaffe (und evtl. geht das so erstmal nicht über einen parametrisierten Aufruf der navi.php und ich muss da was umbauen) : Baue eine Artikelliste mit den von mir vorgegebenen kArtikel.
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.477
289
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Ehrlich gesagt steig ich gerade garnicht hinter wozu man für eine Artikelliste kArtikel übergeben sollte. Wenn müsste doch ein Array mit mehreren kArtikel oder eine Kategorie übergeben werden.
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Naja, ich wollte halt das Rad nicht neu erfinden und dachte mir: Nutze, was es schon gibt.
Der normale Merkmalfilter ist bei meinen Produkten halt nicht wirklich hilfreich, da ich pro Merkmal immer nur ein Wert auswählen kann, keine Range.

Ich kann aber relativ einfach per php und SQL eine Liste der Artikel-ID erstellen, die dem Suchergebniss entsprechen und will diese Auflisten.
Die Artikelliste über die navi.php ist halt praktisch, da Pagination, in den Warenkorb etc. schon alles drin ist.

Wenn das auch anders oder sogar einfacher geht: Her mit dem Trick :).
Ich bin evtl. auch einfach schon zu verbohrt und sehe den Wald vor lauter Bäumen nicht mehr.
 

Bjoern3003

Offizieller Servicepartner
SPBanner
13. November 2006
504
4
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Mein aktueller Wissensstand ist, dass man keine "Range" bei Merkmalen per Suche übergeben kann.
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Genau, daher suche ich per SQL selbst und will nur noch die Artikel als Liste ausgeben. Idealerweise mit den bestehenden Funktionen ;)
Ansonsten baue ich mir eine eigene navi,php, die mir die Artikelliste zusammenbaut und lasse diese über die suche.tpl ausgeben.
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Ich habe mein Abfragen soweit fertig und wollte in der navi.php den Hook 161 (HOOK_NAVI_SUCHE) nutzen, um die Merkmalfilter-Joins ($FilterSQL->oMerkmalFilterSQL->cJoin) zu überschreiben.
Klappt auch bei Versuchen an einer manipulierten navi.php prima, aber ich will diese nicht manipulieren, damit es Updatesicher bleibt und daher will ich auf den Hook zurückgreifen.

Aber jetzt hänge ich bei Kickstarter für Plugins. Da kann ich im Dropdown kein Hook 161 auswählen :-/
Genügt es, ein Plugin zu erstellen mit Hook xyz und dann in der Datenbank den Wert xyz durch 161 zu ersetzen?
 

blackgren

Gut bekanntes Mitglied
1. Februar 2011
358
17
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

In der erzeugeten xml-Datei des Plugins wird festgelegt welcher Hook genutzt werden soll.
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Cool, Datei verändert, installiert, funktioniert ^^

Danke für den Tipp.
 

3po

Sehr aktives Mitglied
30. August 2011
2.594
98
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Wäre ja wirklich der Hammer wenn das funktionieren würde und auch noch performant ist, da hätte ich großes interesse daran!
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Performance ist imho ziemlich gut, der ganze Abfragegeraffel per Ajax kostet mich ca. 35 ms.
Ich gebe - wenn ich fertig bin - den Code gerne her und man darf es auch gerne verbessern, denn ich bin kein PHP-Guru und man kann sicherlich wesentlich eleganter coden ;)

Einzige Bedingung: der verbesserte Code geht kostenfrei an die Community, quasi GPL, dann hat auch jeder was davon ;)
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

So, Filter ist soweit fast fertig, jetzt wird das ganze noch Dokumentiert und dann bereitgestellt.

Für alle Masochisten sei gesagt:
Da ich leider wenig Smarty-Kenntnisse habe müsst Ihr da evtl. einiges verbessern, denn der Code ist nur mäßig schön. Ist nunmal nicht meine primäre Stärke.
Das ganze nutzt noch jQuery + UI, was JTL schon bereitstellt.


Das Ganze wird als Plugin verfügbar gemacht, man wählt im Admininterface per Drag & Drop die Merkmale und Reihenfolge aus, die man im Filter haben möchte. Einen ( nichtlinearen (*) ) Preisslider gibt es auch ;)
Das ganze stellt im Frontend eine Box (für Artikelliste) bereit.

Der Slider eignet sich auch für Ordnungen wie Leicht -> Mittel -> Schwer oder sehr wenig -> wenig -> viel -> sehr viel.

Was aktuell geht:

- Filtern...Wahnsinn, oder?
- Filtern in der Kat, in der man sich befindet.
- Filter bleibt erhalten, wenn man über den "erweiterten Filter" die Sortierung, Darstellung, nach Hersteller usw. ändert.
- Filter bleibt erhalten bei reload
- Filter bleibt erhalten bei ansehen eines Artikels und zurückgehen per Back-Button im Browser
- Preisfilter geht "nur" von Min bis Max der Artikeln in der Kategorie/Unterkats (bzw. nächste Größe bei nichtlinearem Betrieb)
- Haben Artikel in der Kat. nur 3 Merkmale, aber z.B. 5 sind ausgewählt, dann zeigt er nur die 3 an, die filtern können.

Was noch nicht (so recht) geht


Der Preisslider buggt noch ein wenig.
Beispiel: 200E ist der teuerste Artikel in der Kategorie: Als Obergrenze zeigt der Slider bei Vater-Kinderartikel aktuell nur den Vaterpreis an, wenn also der Vater 100E kostet, ein Kind 200E, dann missachtet er die 200E und setzt 100 als Maximum.....

Wenn sie Suche ein leeren Ergebnis bringt fehlt ein Hinweis.

Was noch zu testen ist: Wie läuft es mit globalen Merkmalen?

Was ich evtl. noch mache: Bei nur 2 Merkmalwerten per Einstellung Radioboxen anstatt Slider anzeigen ( z.B. Artikelmerkmal Einheit -> Einzeln / Kiste )


Wie gesagt, bald dürft Ihr meinen Code kritisieren, zerreissen und hoffentlich verbessern. Und mich bei Bedarf verfluchen, auslachen o.ä ^^.

Viele Grüße,
chefsalat


(*) ich habe ihn so per Javascript gestaltet, kann mit wenigen Änderungen im Code geändert werden in einen linearen .
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Das Projekt hat den Alphastatus hinter sich, ab morgen, spätestens übermorgen werde ich das ganze als Beta bereitstellen mit einer Kurzdoku zum testen und verbessern.

Was nun auch geht:

- Filtern, egal ob ein Merkmal global oder nichtglobal ist
- Kinderartikel im Preisslider mitberücksichtigen und dann den Elternartikel anzeigen.
- Pagination & erweiterte Suchfilter & Herstellerfilter
- Slider mit generell nur einem Wert werden ausgeblendet (was will ich da noch filtern? )

Was noch fehlt:

- Leeres Ergebnis, bringe Hinweistext.
- Box-Titel im Adminmenü vergeben, ist aktuell noch ...äähm...äähh....hardcodiert.... *summ*
- Reihenfolge Preisslider. Aktuell ist er immer der unterste.
- Ersetze Slider mit nur 2 Werten durch Radiobutton (ggf. als Option im Adminmenü einbauen)


Dann bis morgen,

chefsalat
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Okay, here we are.

- gefixt: Leeres Ergebnis, bringe Hinweistext.
- gefixt: Box-Titel im Adminmenü vergeben, ist aktuell noch ...äähm...äähh....hardcodiert.... *summ*
- gefixt: Reihenfolge Preisslider. Aktuell ist er immer der unterste.
- NICHT gefixt: Ersetze Slider mit nur 2 Werten durch Radiobutton (ggf. als Option im Adminmenü einbauen)

Bug: Sobald man slidet verschwinden die Badges wie "Neu", "Topseller" usw. bei den Bildern. Da muss ich noch schauen, warum.....

Test auf eigenes Risiko, ich hafte für nix.
Einfach entpacken und nach "plugins" hochladen und installieren.

Anmerkung:

Wenn man die gewählten Slider ändert und die Shop-Seite neu lädt fehlen die neuen Sliders. Einfach einmal Kategorie / Unterkategorie wechseln.
Bei einem Kategoriewechsel werden die Slider resettet.

Nachtrag: Ich konnte es nur mit 3.19 testen, in der XML ist aber zu Testzwecken ab V3 frei.

Den Anhang 11827 betrachten
 

3po

Sehr aktives Mitglied
30. August 2011
2.594
98
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

Sodele, eben mal in ein frischen JTL Testshop mit standard Befüllung installiert. Sobald ich eine Kategorieseite aufrufe bekomme ich eine weiße Seite. Im Adminbackend des plugins ist nichts einzustellen, es steht nur "Slidereinstellungen" das wars?
 

chefsalat

Sehr aktives Mitglied
10. Januar 2013
245
101
AW: Merkmalfilter als Slider (bei Zahlenwerten)?

okay, ich teste es und nehme die Version mal runter....grummel. So schlecht wollte ich nicht starten ^^
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Merkmalfilter: Ausgabe der Kindartikel möglich? Betrieb / Pflege von JTL-Shop 0
WAWi Workflows mit Zahlungen als Bedingung funktioniert nicht JTL-Workflows - Fehler und Bugs 0
Neu Bestellungen werden als bezahlt markiert WooCommerce-Connector 0
Neu EXTF csv Datev als eigenen Export, statt Ameise? Einzeldifferenzbesteuert! User helfen Usern - Fragen zu JTL-Wawi 2
Gutschrift bzw Rechnungskorrektur größer als neuer Auftrag JTL-Wawi 1.9 2
Neu JTL Artikel auf Shopify als Varianten anzeigen Shopify-Connector 2
Neu List & Label - Eigene SQL-Abfrage als Grundlage für Tabelle im Berichtscontainer? User helfen Usern - Fragen zu JTL-Wawi 10
Neu Voraussichtliches Lieferdatum aus Auftrag als Rechnungsdatum/Leistungsdatum Arbeitsabläufe in JTL-Wawi 1
Neu POS Aufträge in der Wawi nicht abgeschlossen, stehen somit im Versand als "offen" JTL-POS - Fehler und Bugs 2
Neu Ameise-Vorlage per SQL abrufen und Daten als Ergebnis erhalten JTL Ameise - Eigene Exporte 1
Neu Shop 5.4.0: Zahlungsarten nun als Position in der Wawi? JTL-Shop - Ideen, Lob und Kritik 17
Lieferanten Rechnungen als bezahlt markieren JTL-Wawi 1.8 0
Neu Artikel mit Zustand beschädigt wird nicht als eigenständiger Artikel in der WaWi angezeigt User helfen Usern - Fragen zu JTL-Wawi 1
Neu Gibt es einen Import von Artikeltexten die pro Artikel als .txt geliefert werden? JTL-Ameise - Ideen, Lob und Kritik 1
Neu JTL-Worker als Windows-Dienst - wie macht Ihr das? User helfen Usern - Fragen zu JTL-Wawi 8
Neu Export von Buchungsdaten zur Differenzbesteuerung als CSV Datei Schnittstellen Import / Export 0
Neu "Warenkorb teilen als Link" Plugin by Visitmedia Plugins für JTL-Shop 2
Neu Durchschnittlichen EK der letzten 3 Monate als Übersicht Eigene Übersichten in der JTL-Wawi 17
Neu Skonto bei Zahlung nicht erkannt. Rechnung bleibt dauerhaft als teilbezahlt. User helfen Usern - Fragen zu JTL-Wawi 7
Neu JTL Shipping: Straße 2 1/2 kommt als 212 bei DHL im Shipping Label an JTL-ShippingLabels - Fehler und Bugs 1
Packliste als CSV exportieren JTL-Wawi 1.9 9
Neu SQL Abfrage - Sendungsnummern als Liste nach Datum Schnittstellen Import / Export 2
Neu Bestandskunden JTL Wawi als Kundenaccounts Woocommerce anlegen WooCommerce-Connector 3
Neu FBA Anlieferung aus der JTL-Wawi heraus --> Firmenname in der Absenderadresse wird nur noch als "-" dargestellt Amazon-Anbindung - Fehler und Bugs 1
Neu Gebinde wie angelegt unter sonstiges als Barcode ausgeben Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 11
Neu Aufruf Ameise als Batch JTL-Ameise - Ideen, Lob und Kritik 0
Amazon FBA Gutschrift als Rechnungskorrektur? JTL-Wawi 1.9 1

Ähnliche Themen