Hallo Leute,
ich habe ein unschönes Problem mit dem Rating_Arrtibut.
Es gibt ja die Sortierfunktion nach Bewertung, diese verwende ich in einigen Listen, leider sortiert diese im Moment nur nach Anzahl der Sterne.
Wenn jetzt mehrere Einträge die selbe Anzahl an Sternen haben werden diese durcheinader gemischt angezeigt, das ist aber aus meiner sicht falsch da ein Eintrag mit 5 Sternen un 200 Votes mehr Gewichtung bekommen sollte als ein Eintrag mit 5 Sternen und 1 Vote.
Ich hab bereits ein Ticket im Github erstellt, dort wurde ich aber auf das Forum verwiesen, darum wollte ich fragen ob das Problem vielleicht selbst schon jemand bei sich behoben hat oder mir helfen kann das SQL anzupassen damit die Ausgabe richtig gelistet wird.
netzmacht hat mir im IRC schon mal kurz geholfen und aus dem Stegreif ein snippet gepostet, leider hat das nicht richtig funktioniert und da müsste vielleicht noch etwas dran gedreht werden.
Hier der Link zu dem betroffenen Code der geändert werden müsste auf Github
Hier der Link zum Ticket
So sieht der Inhalt in der DB aus:
Hzgvp5z.png
Hier noch das Snippet das netzmacht gepostet hat (Zeile 432):
PHP-Code:
->prepare(sprintf(
'SELECT iid FROM tl_metamodel_rating WHERE (mid=?) AND (aid=?) AND (iid IN (%s)) ORDER BY meanvalue '
//.$strDirection,
.$strDirection . ', votecount ' .$strDirection, //von Netzmacht bereitgestellt im IRC
\implode(', ', \array_fill(0, \count($idList), '?'))
))
Bin für jegliche Hilfe dankbar.
lg
schnubi
Lesezeichen