Positions Produits — Guide complet
Installer, configurer et utiliser le module de positions produits : drag & drop, tri automatique multi-critères, épinglage des positions et protection contre les imports ERP pour PrestaShop 8 et 9.
Présentation
Le module Positions Produits offre une interface moderne en drag & drop pour réorganiser les produits dans vos catégories PrestaShop, accompagnée d’outils puissants de tri automatique et d’un système d’épinglage qui protège les positions choisies contre les modifications automatisées (imports ERP, CSV, scripts tiers).
Le module est compatible PrestaShop 8 et 9, en mono comme en multiboutique, et entièrement multilingue (FR, EN, ES, DE, IT). Il écrit directement dans la colonne position standard de PrestaShop : l’ordre défini dans le back-office apparaît à l’identique en front-office, sans configuration supplémentaire ni intégration de thème.
Installation
- Depuis le back-office, ouvrez Modules > Gestionnaire de modules.
- Cliquez sur Installer un module et déposez l’archive ZIP.
- Une fois l’installation terminée, l’entrée Catalogue > Positions produits apparaît dans le menu.
À l’installation, le module crée une table dédiée pour le système d’épinglage et enregistre les hooks nécessaires à la restauration automatique des positions verrouillées.
Interface
L’écran de gestion se compose de trois zones principales :
- Arborescence des catégories à gauche : navigation complète dans la hiérarchie, recherche instantanée, compteur de produits et compteur d’épingles pour chaque catégorie.
- Barre d’outils en haut à droite : recherche dans la catégorie courante, menu Verrouillage (orange) et menu Tri automatique (violet).
- Liste des produits au centre : chaque produit dispose d’une poignée de drag & drop, d’un numéro de position éditable au clic, et de quatre actions rapides — épingler, monter en haut, descendre en bas, éditer la fiche.
Des sélecteurs de boutique et de langue en haut de l’écran permettent de basculer le contexte sans quitter la page.
Réorganiser les produits manuellement
Glisser-déposer
Saisissez la poignée à gauche d’un produit et faites-le glisser à l’emplacement souhaité. Les positions sont enregistrées automatiquement dès le relâchement.
Édition directe du numéro
Cliquez sur le numéro de position d’un produit pour le modifier au clavier. Validez avec Entrée ; appuyez sur Échap pour annuler. Le module décale automatiquement les autres produits pour intégrer la nouvelle position.
Boutons « En haut » et « En bas »
Deux boutons rapides envoient un produit en première ou dernière position de la catégorie en un seul clic.
Tri automatique
Le menu Tri automatique applique un classement à l’ensemble des produits de la catégorie selon le critère choisi. Les critères disponibles sont :
- Par nom : A → Z ou Z → A, basé sur le nom dans la langue courante.
- Par prix : croissant ou décroissant.
- Par stock : stock élevé d’abord ou stock faible d’abord, avec ordre alphabétique en départage.
- Par ventes (90 derniers jours) : meilleures ventes ou moins vendus en premier, calculé sur les commandes valides de la boutique courante.
- Plus récents / plus anciens : selon la date d’ajout du produit.
- Référence A → Z : tri alphabétique par référence interne.
- Inverser l’ordre actuel : retourne la liste complète.
- Mélange aléatoire : ordre aléatoire à chaque exécution.
L’option Appliquer aussi aux sous-catégories propage le tri à toutes les catégories descendantes en une seule opération.
Les produits épinglés conservent leur position pendant le tri : seuls les produits non épinglés sont réorganisés (voir la section suivante).
Épinglage des positions
L’épinglage permet de figer la position d’un produit pour qu’elle ne change ni lors d’un tri automatique, ni à la suite d’une modification externe (import ERP, mise à jour produit via la BO, script). C’est une couche de protection optionnelle : sans épinglage, l’ordre manuel reste valide aussi longtemps que vous ne lancez pas de tri automatique et qu’aucun système externe ne touche aux positions.
Épingler un produit individuellement
Sur chaque ligne produit, l’icône d’épingle bascule l’état épinglé / non épinglé du produit dans la catégorie courante. Un produit épinglé reçoit un liseré orange et un petit badge d’épingle sur son numéro de position. Le compteur d’épinglés dans la barre de statut et dans l’arborescence se met à jour automatiquement.
Vous pouvez toujours déplacer manuellement un produit épinglé (drag & drop, édition directe, boutons rapides) : la position verrouillée suit alors le mouvement. Seuls le tri automatique et les modifications externes sont bloqués.
Verrouiller toute la catégorie
Le menu Verrouillage > Verrouiller toute la catégorie épingle d’un coup l’intégralité des produits de la catégorie courante à leur position actuelle. C’est l’option recommandée pour les catalogues poussés par un ERP qui re-synchronise régulièrement les catégories : une fois la catégorie verrouillée, aucun import externe ne peut modifier l’ordre.
Tout déverrouiller
L’option Tout déverrouiller retire toutes les épingles de la catégorie courante en une seule action. Les positions actuelles sont conservées ; seule la protection est levée.
Restaurer les positions épinglées
L’option Restaurer les positions épinglées rejoue manuellement l’algorithme de restauration sur la catégorie courante. Utile après un gros import pour vérifier visuellement que toutes les positions verrouillées sont bien revenues à leur place — bien que le hook de restauration automatique se déclenche déjà à chaque mise à jour produit.
Cas d’usage
Mettre les N premiers produits en manuel, le reste trié A → Z
Scénario fréquent : positionner manuellement les 5 ou 10 premiers produits d’une catégorie (têtes de gondole, best-sellers, nouveautés) puis trier alphabétiquement tout le reste.
- Sélectionnez la catégorie dans l’arborescence.
- Arrangez vos N premiers produits dans l’ordre souhaité (drag & drop ou édition directe).
- Cliquez sur l’icône d’épingle de chacun de ces N produits.
- Ouvrez Tri automatique > Par nom > A → Z.
Les N produits épinglés restent à leurs positions ; les autres produits sont triés alphabétiquement à partir de la position N+1. Le même mécanisme fonctionne avec tous les critères de tri.
Protéger une catégorie contre un import ERP
Scénario fréquent : votre ERP ou un script externe re-synchronise régulièrement les liens produit / catégorie, ce qui remet à zéro les positions.
- Organisez la catégorie dans l’ordre voulu.
- Ouvrez Verrouillage > Verrouiller toute la catégorie.
- Confirmez : tous les produits sont épinglés à leur position actuelle.
À partir de cet instant, chaque mise à jour d’un produit verrouillé déclenche automatiquement la restauration de sa position d’origine, quel que soit le système à l’origine de la modification.
Multiboutique
Le module est entièrement compatible avec la fonctionnalité multiboutique de PrestaShop. Le sélecteur de boutique en haut de l’interface bascule le contexte. Les positions et les épingles sont indépendantes par couple (catégorie, boutique) : épingler un produit dans la boutique A ne le verrouille pas dans la boutique B.
Multilingue
L’interface du back-office est traduite en français, anglais, espagnol, allemand et italien. Le sélecteur de langue en haut de l’écran change la langue de l’arborescence et des noms de produits affichés ; les positions sont communes à toutes les langues d’une boutique (comportement natif de PrestaShop).
Performance
Le module utilise des requêtes SQL optimisées avec jointures sur les index existants (category_product, product_shop, stock_available). L’enregistrement des positions est debounced côté JavaScript pour éviter les requêtes successives lors de réorganisations rapides. La table d’épinglage est dotée d’une clé primaire composite et de deux index secondaires pour des restaurations très rapides, même sur des catégories de plusieurs centaines de produits.
Désinstallation
La désinstallation du module supprime la table d’épinglage et l’entrée de menu correspondante. Les positions dans category_product restent intactes : votre ordre actuel est préservé. Seule la protection (épinglage et restauration automatique) est levée.
FAQ
Faut-il épingler chaque produit pour que l’ordre manuel soit conservé ?
Non. L’ordre défini en drag & drop ou via l’édition directe est enregistré dans la colonne position standard de PrestaShop et y reste tant qu’aucun tri automatique ou import externe ne le modifie. L’épinglage est une couche de protection optionnelle, utile uniquement si vous voulez combiner positions manuelles et tri automatique, ou si votre ERP touche aux liens produit / catégorie pendant les imports.
L’ordre défini dans le back-office est-il bien reflété en front-office ?
Oui, sans configuration supplémentaire. Le module écrit dans la colonne native category_product.position que PrestaShop utilise déjà pour ordonner les listes de produits en front. Aucune intégration de thème ni de hook additionnel n’est requis.
Mon ERP re-synchronise les catégories à chaque import : que faut-il faire ?
Ouvrez le menu Verrouillage > Verrouiller toute la catégorie. Cela épingle d’un coup tous les produits à leur position actuelle. Le hook de restauration automatique remet ensuite les positions à leur place à chaque fois que l’ERP modifie un produit verrouillé.
Peut-on déplacer un produit épinglé ?
Oui. L’épinglage protège contre les modifications automatiques (tri auto, imports externes). Lorsque vous déplacez manuellement un produit épinglé (drag & drop, édition de la position, bouton en haut ou en bas), la position verrouillée est mise à jour pour suivre le mouvement.
Le tri automatique fonctionne-t-il avec les sous-catégories ?
Oui. Cochez l’option Appliquer aussi aux sous-catégories dans le menu de tri pour propager le critère à toutes les sous-catégories de la catégorie courante en une seule opération.
Le module est-il compatible PrestaShop 9 ?
Oui, le module est compatible PrestaShop 8.x et 9.x, en mono comme en multiboutique, sans dépendance Composer ni JavaScript externe (jQuery et jQuery UI sont fournis nativement par PrestaShop).
Le module remplace-t-il l’écran natif de positions de catégorie ?
Non, il s’ajoute en complément. L’écran natif de PrestaShop reste disponible ; le module fournit une interface plus moderne avec l’épinglage et le tri multi-critères en bonus.