Hallo zusammen,
ich habe für meine Produkte Freitextfelder mit Integerwerten angelegt. Ich finde es super, dass es die Möglichkeit gibt Freitextfelder in die Filterfunktion einzubauen. Leider funktioniert das Ganze für den Anzeige Modus “Slider” nicht so ganz, da die Min- und MaxValues nicht als Integer im SQL behandelt werden. Der Slider im Frontend erhält völlig falsche Werte.
Beheben kann man den Fehler in ProductAttributeFacetHandler.php in Zeile 227:
Hier sollte auf Integer gecastet werden, da bei einer Range ja auch nur Integerwerte Sinn machen.
$query->select([
'MIN( CAST(' . $sqlField . ' as UNSIGNED )) as minValues',
'MAX( CAST(' . $sqlField . ' as UNSIGNED )) as maxValues'
]);
Betätigt man den Slider nun im Frontend, wird nicht richtig gefilter, da dort wiederum ein anderes SQL Statement greift, welches ich bisher nicht ausfündig machen konnte. Kann mir hier vielleicht weitergeholfen werden? Ich denke, dass das Ganze doch ein nettes Feature für alle Shopware Nutzer sein könnte.
Viele Grüße
Marcolino