Hallo,
ich habe in unserem Shop einen Schieberegler für den Preis eingebaut. Dieser funktioniert problemlos.
Nun wollte ich die Anzeige um einen Schieberegler erweitern. Mit diesem soll in einer Kategorie (Objektive) die Brennweite wählbar sein. Der Schieberegler funktioiniert an sich problemlos, nur die Anzahl der in der Artikelliste angezeigten Artikel weicht von der _artperPage Menge ab, sprich bei _artperpage = 10 werden nur 7 angezeigt, bei gefilterter Liste wechselt die Anzahl sogar.
Ich habe die Funktion _getCategoryCountSelect angepasst, sie erhält die gleiche Anzahl wie _getCategorySelect.
Ich habe, um auf den Wert für die Brennweite (Kategorie Objektive) zugreifen zu können, den Query erweitert.
Standard Query:
$sSelect = "SELECT $sFields FROM ($sO2CView as oc left join $sArticleTable
ON $sArticleTable.oxid = oc.oxobjectid) inner join oxobject2attribute on oxobject2attribute.oxobjectid = oc.oxobjectid
WHERE ".$this->getBaseObject()->getSqlActiveSnippet()." and $sArticleTable.oxparentid = ''
and oc.oxcatnid = ".$oDb->quote($sCatId)." $sFilterSql ";
angepasster Query
$sSelect = "SELECT $sFields FROM $sO2CView as oc left join $sArticleTable
ON $sArticleTable.oxid = oc.oxobjectid
WHERE ".$this->getBaseObject()->getSqlActiveSnippet()." and $sArticleTable.oxparentid = ''
and oc.oxcatnid = ".$oDb->quote($sCatId)." $sFilterSql ";
Der angepasste Query wird nur in der bestimmten Kategorie genutzt, in den übrigen der Standard.
Der Schiebregler für den Preis kam ja ohne eine Anpassung des Querys aus. Kann jemand sehen ob es da bereits einen Fehler gibt?
Oder wird die Pagination an anderer Stelle erstellt?
Falls noch mehr Code benötigt wird, werde ich den natürlich bereitstellen.
Vielen Dank schonmal.
VG Thomas