Magento – Impostare l’ordine casuale usando RAND()
Scenario:
Hai creato un modulo personalizzato, hai inserito alcuni dati nel tuo database e hai bisogno di mostrarli random, in maniera casuale.
Soluzione:
La funzione rand() in MySQL serve ad andare a prendere i dati in maniera casuale. All’interno di Magento, si possono selezionare le righe da mostrare in maniera random dalla tabella MySQL utilizzando Zend_Db_Expr(‘RAND()’).
Per fare ciò devi creare una nuova funzione nella classe del tuo modulo (NomedelloSpazio/NomeModulo/Model/Mysql4/NomeModulo/Collection.php)
public function setRandomOrder() { $this->getSelect()->order(new Zend_Db_Expr('RAND()')); return $this; } |
Ora puoi andare a prendere i dati dalla tabella in maniera random utilizzando la funzione setRandomOrder appena creata. Il codice che segue può essere inserito in un blocco o nel file template del tuo modulo (.phtml)
$collection = Mage::getModel('yourmodule/yourmodule') ->getCollection() ->setRandomOrder(); echo " <pre>"; print_r($collection->getData()); echo " |
“;
Spero vi sia d'aiuto
Fonte: blog.chapagain.com


















Clicca qui per