Alle Beispiele zum Thema SortingHandler die ich gefunden habe, erweitern das Query um ein orderBy. Soweit auch versändlich. Mich würde aber ein theoretisches Custom-Sorting die Artikel nach dem eigentlichen Query interessieren. Grob gesagt, bekommt jeder Artikel eine Punktzahl, 100 Punkte wenn ein Bild da ist, 50 Wenn eine Beschreibung da ist, nochmal 50 wenn die Beschreibung eine gewissen Länge hat. Für jede Property 10 Punkte usw. Wenns die Artikelnummer ungerade ist nochmal 20 drauft. Eventuell auch im Bezug zu anderen im Listing befindliche Produkte. Danach die Produkte nach Punktzahl absteigend sortieren. Ich weiß, ich könnte die Punktzahl asynchron errechnen (z.B. beim bearbeiten der Produktdaten, oder per CronJob) und dann über diese neue Punktzahlspalte das OrderBy machen. Mich interessiert aber ob es auch “Live” gehen würde (performance mal außer Acht gelassen).
Du könntest im order by multiplizierungen mit if abfragen machen, was die Suche verlangsamen könnte. Ich könnte mir das ganze ganz cool mit Elasticsearch und Boost Querys vorstellen.
Mhh, verlangsamt das wirklich die Shopware Suche wenn das nicht die Standard Sorting ist?