[hack] Trier les produits et leurs options dans le panier et/ou la commande, en 5 lignes de code |
Bienvenue invité ( Connexion | Inscription )
[hack] Trier les produits et leurs options dans le panier et/ou la commande, en 5 lignes de code |
18 Dec 2011, 10:59
Message
#1
|
|
Ceinture marron OSC Groupe : Membres Messages : 1665 Inscrit : 3-June 09 Membre no 25501 |
Nativement, la page shopping_cart n'est pas filtrée. Les produits (ainsi que leurs options qui elles sont triées dans la page product_info) sont affichés dans l'ordre de l'ajout fait par le client.
ce qui donne : la modification est simple (à mettre en place, un peu moins à trouver techniquement). dans le fichier catalog/shopping_cart.php, ajouter après : Code $any_out_of_stock = 0; $products = $cart->get_products(); ces 5 lignes de code : Code foreach ($products as $key => $row) { $attributes[$key] = $row['attributes']; $name[$key] = $row['name']; } array_multisort(array_map('strtolower',$name), $attributes, $products, SORT_ASC); avec comme résultat visuel : dans cet exemple, la fonction array_multisort filtre les produits par leurs nom (tri ascendant) mais également par le nom des options (tri ascendant). C'est un double filtrage. Le tri par le nom est donné a titre d'exemple, sachant que l'ensemble des données du tableau peut être filtré (quantité, prix, etc) La même chose peut être fait dans la boxe shopping_cart (catalog/includes/modules/boxes/shopping_cart) en ajoutant après : Code $products = $cart->get_products(); les mêmes 5 lignes de code : Code foreach ($products as $key => $row) { $attributes[$key] = $row['attributes']; $name[$key] = $row['name']; } array_multisort(array_map('strtolower',$name), $attributes, $products, SORT_ASC); il en va de même pour la commande (catalog/includes/classes/order.php) ~ligne 281 après : Code $index = 0; $products = $cart->get_products(); en ajoutant : Code foreach ($products as $key => $row) { $attributes[$key] = $row['attributes']; $name[$key] = $row['name']; } array_multisort(array_map('strtolower',$name), $attributes, $products, SORT_ASC); mis sur le forum pour mémoire. |
|
19 Dec 2011, 18:30
Message
#2
|
|
Ceinture marron OSC Groupe : Membres Messages : 1665 Inscrit : 3-June 09 Membre no 25501 |
référencé dans le Community Add-Ons : http://addons.oscommerce.com/info/8274
ce partage fait suite à l'aide apportée sur le forum international : http://forums.oscommerce.com/topic/381977-...-shopping-cart/ |
|
20 Dec 2011, 21:39
Message
#3
|
|
5eme dan OSC Groupe : Administrateur Messages : 9221 Inscrit : 4-March 03 Lieu : Pau Membre no 927 |
Yes!
Good job et assez simple comme principe. Cool. -------------------- Tout d'abord : - Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)
Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues : Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums. Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin. ----------------------------- Quelques sites de référence --------------------------- PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloper Le gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien) |
|
3 Sep 2014, 16:33
Message
#4
|
|
Ceinture blanche OSC Groupe : Membres Messages : 12 Inscrit : 20-April 12 Lieu : 6600 Membre no 30920 |
Salut,
j'arrive un peu tard sur ce post Quelqu'un sait comment trier les produits dans shopping_cart.php par derniers produits ajoutés dans le panier ? C'est assez urgent. Merci Ce message a été modifié par Dge-06 - 3 Sep 2014, 16:33. -------------------- Version d'OSC: remasterisée par moa :)
|
|
Version bas débit | Nous sommes le : 28th March 2024 - 13:43 |
Ce site est déclaré auprès de la commision Nationale de l'Informatique et des Libertés (déclaration n°: 1043896) |