Jump to content

Ordinamento default e per quantità pagina Categoria


np6

Recommended Posts

Ciao a tutti, 
Su una versione 1.7 sto cercando di impostare di default l'ordinamento per quantità nonostante l'ordinamento selezionato. Ad es: se a frontend seleziono per Rilevanza o per Nome, da A a Z, dovrebbe comunque ordinarmi i prodotti in base anche alla quantità in senso decrescente. 
Sto provando a modificare la Classe Category.php come segue.
Ma non sembra funzionare

 

if ($random === true) {
            $sql .= ' ORDER stock.`quantity` '.(int)$randomNumberProducts;
        } else {
            $sql .= ' ORDER BY real_quantity.`quantity` > 0 DESC, '.(!empty($orderByPrefix) ? $orderByPrefix.'.' : '').'`'.bqSQL($orderyBy).'` '.pSQL($orderWay).' LIMIT '.(((int)$p - 1) * (int)$n).','.(int)$n;
        }


Grazie

Link to comment
Share on other sites

Ciao,

innanzitutto sarebbe utile che tu dicessi quale funzione della classe Category stai cercando di modificare, io presuppongo sia getProducts.

2 hours ago, np6 said:

if ($random === true) {

significa che l'utente ha scelto per i prodotti un ordine casuale, quindi non credo sia pertinente modificare questa parte di codice, oltretutto non capisco cosa vuol dire

2 hours ago, np6 said:

ORDER stock.`quantity`

Per quanto riguarda la seconda parte della modifica, cosa sarebbe?

2 hours ago, np6 said:

ORDER BY real_quantity.`quantity`

La quantità è nella tabella ps_product che nella query di getProducts è rinominata come "p", "real_quantity" non esiste in PS come tabella, a meno che non l'abbia aggiunta tu, quindi al massimo la tua modifica andrebbe riscritta come ORDER BY p.quantity ecc.

Non so esattamente come tu stai facendo questa modifica ma ti consiglio di usare un override.

Buon pomeriggio,
Federica

Link to comment
Share on other sites

23 minutes ago, fedesib said:

Ciao,

innanzitutto sarebbe utile che tu dicessi quale funzione della classe Category stai cercando di modificare, io presuppongo sia getProducts.

significa che l'utente ha scelto per i prodotti un ordine casuale, quindi non credo sia pertinente modificare questa parte di codice, oltretutto non capisco cosa vuol dire

Per quanto riguarda la seconda parte della modifica, cosa sarebbe?

La quantità è nella tabella ps_product che nella query di getProducts è rinominata come "p", "real_quantity" non esiste in PS come tabella, a meno che non l'abbia aggiunta tu, quindi al massimo la tua modifica andrebbe riscritta come ORDER BY p.quantity ecc.

Non so esattamente come tu stai facendo questa modifica ma ti consiglio di usare un override.

Buon pomeriggio,
Federica

Ciao Federica,
Si la funzione è getProducts.
Ok per la tabella ps_product, si effettivamente non ho aggiunto la tabella "real_quantity" ho messo p.quantity come mi hai consigliato. Comunque si la modifica la sto facendo tramite override estendendo la classe Category.

Nicolò

Edited by np6
Adding informations (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...