Cleanup Revolution : installation et aide
Démarrage rapide
- Téléversez et installez le ZIP Cleanup Revolution dans "Module Manager".
- Choisissez la boutique souhaitée et vérifiez les autorisations de nettoyage de l’employé.
- Ouvrez Configuration de la base de données et examinez Activé, la conservation des archives et la politique de la tâche sélectionnée.
- Vérifiez la disponibilité du stockage privé des archives et de la prise en charge d’OpenSSL.
- Ouvrez Tâches de nettoyage, sélectionnez une tâche et cliquez sur Simuler le nettoyage.
- Examinez le plan enregistré, vérifiez la sauvegarde et approuvez-le si nécessaire, puis utilisez Exécuter le plan approuvé.
- Lisez le rapport final et Historique de la base de données pour confirmer les travaux terminés et les lignes ignorées.
Nécessite PrestaShop 1.6.1 ou une version ultérieure et PHP 7.1 ou une version ultérieure.
Manuel de configuration
Installer et préparer l’accès
- Téléversez et installez le ZIP
mprcleanuprevolutionvia "Modules" > "Module Manager". - Cliquez sur "Configure". Vous arrivez sur Nettoyage > Paramètres > Configuration pour les paramètres de fichiers et d’images.
- Choisissez le contexte de boutique souhaité.
- Ouvrez Nettoyage > Base de données > Configuration de la base de données pour les politiques de base de données.
- Vérifiez les autorisations du profil employé et le stockage privé des archives avant toute opération destructive sur la base.
- Commencez dans Nettoyage > Base de données > Tâches de nettoyage et cliquez sur Simuler le nettoyage pour une tâche.
- Examinez le plan enregistré, la portée, les lignes protégées et les dépendances. Terminez la vérification de sauvegarde et l’approbation lorsqu’elles sont requises avant l’exécution.
Conservez vos sauvegardes habituelles de la base de données et des fichiers de la boutique. Les archives de lignes du module couvrent les plans de nettoyage de base de données admissibles. Elles ne constituent pas une sauvegarde complète des fichiers de la boutique, de toutes les tables ou des services externes.
Configurer les autorisations des employés et le stockage
Les opérations de base de données utilisent les autorisations natives des profils employés. Le module installe des onglets d’autorisation distincts pour Simuler le nettoyage, Nettoyage des statistiques, Nettoyage des données personnelles, Nettoyage du catalogue, Approuver les exécutions destructives, Exécution immédiate et planification, Exporter les sauvegardes chiffrées, Restaurer les sauvegardes et Optimiser les tables.
Consulter un plan exige les droits de consultation de l’aperçu et de la catégorie de tâche. Les opérations destructives vérifient aussi l’autorisation de suppression correspondante. L’approbation, l’export de sauvegarde, la restauration et la maintenance ont des autorisations supplémentaires. L’accès de l’employé aux boutiques est vérifié. L’exécution CLI vérifie également les autorisations et l’accès aux boutiques de l’employé sélectionné.
Les archives de base de données doivent se trouver hors de toutes les racines documentaires publiques. Par défaut, elles se trouvent dans un répertoire caché à côté de la racine de la boutique, nommé .mprcleanuprevolution- suivi d’un hash généré. Un déploiement peut définir la constante PHP MPRDBCLEAN_STORAGE_ROOT sur un autre répertoire privé absolu et MPRDBCLEAN_PUBLIC_ROOTS sur un tableau de racines publiques.
L’utilisateur PHP doit avoir accès à ce stockage. Les répertoires doivent avoir des permissions privées équivalentes à 0700 ; la clé d’archive doit être privée, avec l’équivalent de 0600. Le stockage d’archives via des liens symboliques ou accessible publiquement est refusé. OpenSSL doit prendre en charge aes-256-gcm.
Conservez la clé de chiffrement des archives avec vos éléments privés de récupération. Exporter la sauvegarde chiffrée n’exporte pas cette clé. Pour la CLI, fournissez un DOCUMENT_ROOT valide ou configurez MPRDBCLEAN_PUBLIC_ROOTS afin que le module puisse déterminer les emplacements publics.
Configurer le nettoyage de la base de données
Ouvrez Nettoyage > Base de données > Configuration de la base de données. Les paramètres de base de données sont distincts de la configuration fichiers/images.
| Paramètre | Valeur par défaut | Modification |
|---|---|---|
| Activé, au niveau de la portée | Hériter, avec Oui comme valeur effective par défaut | Choisissez Oui ou Non pour la portée actuelle boutique/groupe/globale, ou héritez de la valeur parente. Vérifié avant chaque lot destructif, restauration et optimisation. |
| Conservation des archives en heures | Héritée, valeur effective par défaut 720 |
Définissez une durée de conservation positive pour les archives chiffrées ou laissez vide pour hériter. |
| Activé, pour une tâche | Oui, sauf les tâches à activation explicite ci-dessous | Activez uniquement les tâches que vous comptez utiliser. |
| Durée de conservation en jours | Valeur par tâche ci-dessous | Définissez l’âge minimal lorsque la tâche a une règle d’âge. Ce n’est pas le seul contrôle d’admissibilité. |
| Taille du lot | 1000 |
Réduisez pour des lots de base de données plus petits. Le maximum positif autorisé est 10000. |
| Limite de lignes par exécution | 50000 |
Limite le travail de l’exécution. |
| Durée maximale d’exécution en millisecondes | 1000 |
Limite le temps de traitement. Le travail peut enregistrer un point de reprise et continuer. |
| Ancienneté maximale de la sauvegarde en heures | 24 |
Âge maximal de la sauvegarde que le module crée avant un nettoyage ou une optimisation ; une sauvegarde plus ancienne arrête l'exécution. |
| Planification de la tâche | Vide | Expression cron à cinq champs, par exemple 30 3 * * * ; laissez vide pour désactiver. Exécution sous l’identité de l’employé ayant enregistré la politique. |
| Fuseau horaire | UTC |
Fuseau horaire utilisé pour évaluer la planification de la tâche. |
Les politiques s’héritent selon la portée. Consultez la table des politiques effectives pour confirmer la source et la valeur de chaque boutique. Un changement de politique ou de portée exige un nouvel aperçu. L’approbation est liée au hash du plan enregistré et à l’employé authentifié.
Choisir une tâche de base de données
| Libellé de tâche | Clé | Conservation en jours | Initialement activée |
|---|---|---|---|
| Paniers abandonnés | old_carts |
30 | Oui |
| Relations de paniers orphelines | orphan_cart_children |
30 | Oui |
| Statistiques de recherche | search_stats |
90 | Oui |
| Prix spécifiques expirés | expired_specific_prices |
30 | Oui |
| Anciens journaux | old_logs |
90 | Oui |
| Anciennes visites | old_connections |
90 | Oui |
| Observations de visiteurs expirées | old_guests |
90 | Oui |
| Journaux de courrier | mail_logs |
30 | Oui |
| Pages de visite orphelines | orphan_connection_pages |
90 | Oui |
| Sources de visite orphelines | orphan_connection_sources |
90 | Oui |
| Statistiques des pages introuvables | missing_pages |
90 | Oui |
| Règles panier expirées | expired_cart_rules |
30 | Non |
| Déclinaisons orphelines | orphan_combinations |
90 | Oui |
| Relations de déclinaisons orphelines | orphan_combination_relations |
90 | Oui |
| Variantes sélectionnées du marchand | selected_combinations |
90 | Non |
| Index de recherche orphelin | orphan_search_index |
90 | Non |
| Mots de recherche inutilisés | unused_search_words |
90 | Non |
| Adresses orphelines | orphan_addresses |
90 | Non |
| Relations de catalogue orphelines | orphan_catalogue |
90 | Non |
Le registre des tâches protège les références actives, les commandes historiques et les données d’autres boutiques selon chaque tâche. L’âge inconnu d’un visiteur commence à la première observation. Il ne suppose pas que chaque ligne visiteur est déjà assez ancienne.
Pour Variantes sélectionnées du marchand, renseignez Identifiants des déclinaisons sélectionnées, séparés par des virgules. Cette tâche exige une sélection explicite, un aperçu, une sauvegarde et une approbation. Noms des modules reconnus, séparés par des virgules est disponible pour le processus de dépendances du plan. Lisez le rapport de dépendances avant de l’utiliser.
Les anciens champs de configuration concernant les messages clients fermés, les vues de page, les visiteurs/clients inscrits sans commande, la double confirmation et le nombre global de lignes par lot ne correspondent pas à l’écran actuel des politiques de base de données. Utilisez la liste de tâches et les politiques ci-dessus.
Prévisualiser, sauvegarder et exécuter un plan de base de données
Ouvrez Nettoyage > Base de données > Tâches de nettoyage. Sélectionnez Tâches. Vous pouvez saisir Conservation ponctuelle en jours pour remplacer la valeur dans l’aperçu. Cliquez sur Simuler le nettoyage.
L’espace de travail enregistre une exécution avec un identifiant d’exécution et un hash de plan. Examinez les nombres, boutiques concernées, date limite de conservation, politiques effectives, dépendances, risques, octets logiques estimés et lignes protégées/ignorées. Les grands aperçus peuvent avancer sur plusieurs requêtes bornées.
Pour les tâches nécessitant sauvegarde et approbation :
- Cliquez sur Vérifier la sauvegarde et attendez la fin de la vérification.
- Examinez le plan enregistré et cliquez sur Approuver ce plan.
- Confirmez l’opération destructive.
- Cliquez sur Exécuter le plan approuvé.
- Lisez le rapport final. Un résultat partiel ou en échec doit être examiné avant Reprendre l’exécution.
Les tâches statistiques à faible risque n’ont pas les mêmes exigences de sauvegarde/approbation. Vérifiez le plan plutôt que de supposer que chaque opération est récupérable.
Exécuter maintenant utilise le même processus de plan enregistré et les mêmes autorisations. Ce n’est pas un raccourci de suppression inconditionnelle. Annuler l’exécution arrête le travail à venir ; il n’annule pas les lots déjà validés.
Restaurer, exporter et optimiser
Ouvrez Nettoyage > Base de données > Sauvegardes et restauration. Chargez l’identifiant d’exécution, inspectez les éléments sauvegardés et choisissez Simuler la restauration. Examinez les conflits avant Restaurer la sauvegarde vérifiée. La restauration refuse les lignes actives en conflit plutôt que de les remplacer aveuglément.
Utilisez "Export report JSON" ou "Export report CSV" pour le rapport d’exécution. Choisissez un Identifiant de l’élément sauvegardé pour Exporter la sauvegarde chiffrée. Ces téléchargements exigent les autorisations correspondantes.
Purger les archives expirées effectue un entretien borné des archives. La conservation des archives se mesure en heures et est distincte du réglage de corbeille des images orphelines.
L’optimisation des tables utilise aussi cet espace de base de données. Saisissez Tables à optimiser, séparées par des virgules, puis utilisez Simuler l’optimisation des tables, Vérifier la sauvegarde d’optimisation, Approuver l’optimisation des tables et Optimiser les tables. Continuez uniquement après examen du plan. L’optimisation peut verrouiller ou reconstruire des tables de base de données et doit être prévue pendant une période de maintenance adaptée.
"Table Sizes" indique la taille des données, celle des index, l’espace réutilisable/libre et la fragmentation à partir des métadonnées de la base. Les tailles de lignes estiment les données logiques; leur suppression peut laisser de l’espace réutilisable en base sans réduire immédiatement l’espace disque occupé.
Configurer le nettoyage des fichiers et images
Ouvrez Nettoyage > Paramètres > Configuration, avec le titre Configuration du nettoyage.
| Paramètre | Valeur par défaut | Effet |
|---|---|---|
| Nettoyage des fichiers et des images activé | Activé | Contrôle le nettoyage manuel et planifié des fichiers/images, y compris la suppression de dossiers de modules. Distinct de Activé pour la base de données. |
| Mode simulation par défaut | Activé | Mode par défaut des actions manuelles fichiers/images. Choisissez Aperçu uniquement ou Appliquer le nettoyage sur la page d’action. Le nettoyage planifié des fichiers applique les modifications. |
| Déplacer les images vers la corbeille au lieu de les supprimer | Activé | Déplace les images orphelines sélectionnées vers le répertoire de corbeille des images. |
| Conservation de la corbeille | 30 jours |
Supprime définitivement les dossiers datés expirés de la corbeille d’images lors du nettoyage planifié des fichiers, selon la date de mise en corbeille. |
| Fichiers temporaires | 7 jours |
Âge minimal pour le nettoyage automatique des fichiers temporaires et l’action de nettoyage des images temporaires. |
| Seuil d'alerte de fragmentation | 20 pour cent |
Fragmentation minimale pour la vue des tables fragmentées. |
| Activer les rapports par e-mail | Désactivé | Envoie, si activé, des rapports sur le nettoyage automatique des fichiers et images. |
| Adresse e-mail | Vide | Destinataire du rapport ; laissez vide pour utiliser l’e-mail de l’administrateur de la boutique. |
| Fréquence des rapports | Résumé quotidien (daily) |
Résumé quotidien (daily) ou Après chaque exécution automatisée (per-run). Les rapports couvrent les opérations automatiques fichiers/images, pas les exécutions de base de données ni les actions manuelles. |
Cliquez sur Enregistrer la configuration après les modifications. Sur les pages d’actions fichiers/images, examinez Aperçu uniquement, puis choisissez Appliquer le nettoyage pour effectuer les modifications. La préférence de simulation définit le mode initial ; le nettoyage planifié applique toujours les modifications.
Examiner les images
Utilisez "Images" > Images orphelines pour comparer les fichiers image des produits, catégories, fabricants et fournisseurs aux références de la base. Examinez les fichiers avant suppression, surtout en cas de gestion personnalisée des images.
Avec le mode corbeille activé, les images orphelines sélectionnées sont déplacées vers :
/img/_cleanup_trash/YYYY-MM-DD/
Récupérez-les depuis le système de fichiers avant leur suppression définitive par la purge planifiée après la durée de conservation. Lorsque le mode corbeille est désactivé, les images retirées sont supprimées définitivement. Ne confondez pas la corbeille d’images avec les archives chiffrées de base de données.
"Duplicate Images" regroupe par MD5 les fichiers d’images produit identiques et indique l’espace gaspillé estimé. Il ne fusionne pas les affectations d’images et ne supprime pas automatiquement les doublons. Images manquantes signale les images produit référencées dont les fichiers sont introuvables.
Examiner le cache, les fichiers temporaires et les résidus de modules
Fichiers et cache > Nettoyage du cache répertorie le cache Symfony existant, les fichiers compilés/cache Smarty, le cache des ressources du thème, les journaux et le cache d’index des classes. Examinez les groupes avant de les vider. Vider le cache peut entraîner sa régénération lors des requêtes suivantes.
Fichiers temporaires répertorie les fichiers temporaires d’images et d’import pour examen et suppression manuels, y compris ceux plus récents que le seuil de conservation. Une sélection manuelle peut aussi supprimer ces fichiers récents. Le paramètre de conservation s’applique au nettoyage automatique des fichiers temporaires et à l’action de nettoyage des images temporaires dans les chemins pris en charge.
Résidus du module distingue les dossiers de modules désinstallés, les dossiers mis de côté et les entrées qui ne sont pas des modules. Seuls les dossiers admissibles de modules désinstallés disposent du processus de suppression. Supprimer un dossier efface ses fichiers. Exportez auparavant ce dont vous avez besoin. Les tables MPR et clés de configuration candidates sont des informations à examiner ; cette page ne supprime pas automatiquement ces tables ni toutes les clés MPR%.
Détecteur de doublons signale les produits en double par nom/référence/EAN/UPC, ainsi que les catégories, caractéristiques et attributs. Examinez-les et résolvez-les manuellement. Il ne fusionne pas les entités du catalogue.
Exécuter la maintenance en ligne de commande
L’espace de base de données fournit :
php modules/mprcleanuprevolution/bin/cleanup.php --help
php modules/mprcleanuprevolution/bin/cleanup.php --employee=1 --shops=1 --task=old_carts --preview
Remplacez les identifiants par ceux d’un employé actif autorisé et des boutiques souhaitées. Utilisez --shops=1,2 pour une liste explicite autorisée. --global est un choix de portée explicite distinct. La commande ne contourne pas les autorisations des profils.
Les étapes d’une exécution enregistrée sont des commandes séparées :
php modules/mprcleanuprevolution/bin/cleanup.php --employee=1 --shops=1 --run-id=RUN_ID --verify-backup
php modules/mprcleanuprevolution/bin/cleanup.php --employee=1 --shops=1 --run-id=RUN_ID --approve --plan-hash=PLAN_HASH
php modules/mprcleanuprevolution/bin/cleanup.php --employee=1 --shops=1 --run-id=RUN_ID --execute
Utilisez l’identifiant d’exécution et le hash réels du rapport examiné. Utilisez un seul indicateur d’opération par commande. La restauration utilise --restore-preview, puis --restore --plan-hash=PLAN_HASH. --batches=N enregistre un point de reprise après un nombre borné de lots. Les surcharges d’aperçu comprennent --retention-days, --batch-size, --row-budget, --time-budget-ms, --combination-ids et --acknowledged-modules. Un plan enregistré ne peut pas être modifié en ajoutant ces surcharges.
L’exécuteur cron MPR partagé vérifie database_cleanup chaque minute. Enregistrez une expression cron à cinq champs et un fuseau horaire dans la politique de tâche pour activer sa planification, ou laissez la planification vide pour la désactiver. Les exécutions utilisent les autorisations et l’accès aux boutiques de l’employé ayant enregistré la politique. Le planificateur crée un aperçu enregistré et prépare les sauvegardes requises ; les tâches nécessitant une approbation attendent l’examen et l’approbation du plan dans Tâches de nettoyage avant de continuer.
La tâche distincte file_cleanup, intitulée "Clean Cache & Temp Files", s’exécute à daily:03:30. Elle vide les groupes de cache pris en charge, supprime les fichiers temporaires plus anciens que le seuil configuré et purge définitivement les dossiers expirés de la corbeille d’images. Elle applique les modifications même avec la simulation par défaut activée. Si les rapports sont activés, per-run envoie un rapport après ce callback ; daily envoie un résumé via email_report à daily:05:00.
Vérifier, dépanner et désinstaller
Après chaque exécution, inspectez Historique de la base de données et son rapport pour les travaux terminés, ignorés, partiels ou échoués. Les opérations fichiers/images écrivent aussi dans l’historique de nettoyage du module avec les nombres concernés, estimations d’espace, durée et détails de l’employé/du déclencheur.
Si une action de base de données est indisponible, vérifiez les autorisations du profil, les boutiques sélectionnées, les valeurs effectives de Activé, la politique de tâche, la révision du plan et la sauvegarde requise. Si la vérification de sauvegarde échoue, contrôlez l’emplacement privé, les permissions, les déclarations de racines publiques et la prise en charge d’OpenSSL. Si une restauration signale des conflits, examinez les lignes actives modifiées avant de créer un nouvel aperçu de restauration.
Utilisez Nettoyage > Paramètres > Vérification système pour les tables partagées et les problèmes de version d’exécution. Si l’exécution s’arrête sur un budget, inspectez l’exécution enregistrée et reprenez-la plutôt que de créer une opération de suppression sans lien.
Pour arrêter les suppressions de base de données, définissez sa valeur effective Activé sur Non. Désactivez Nettoyage des fichiers et des images activé pour bloquer le nettoyage planifié et manuel des fichiers/images, y compris la suppression de dossiers de modules. Désactivez séparément Activer les rapports par e-mail pour arrêter les e-mails de rapport. Désactivez l’ensemble du module dans "Module Manager" si vous devez arrêter tout accès au module. Ces paramètres sont distincts.
La désinstallation supprime le menu et l’enregistrement du module. Les journaux de nettoyage partagés et les archives de récupération sont conservés pour les autres modules qui les utilisent. La désinstallation ne restaure pas les lignes ou fichiers supprimés. Conservez les données et clés de récupération nécessaires jusqu’à satisfaction de vos obligations de conservation et besoins de récupération.
Compatibilité
Nécessite PrestaShop 1.6.1 ou une version ultérieure et PHP 7.1 ou une version ultérieure.
Captures d’écran de référence












Questions
Pas encore de questions sur ce module
Posez vos questions sur l'installation, la compatibilité ou la configuration. Les réponses apparaissent ici.
Problèmes connus
15
Le nettoyage des images orphelines supprime des images encore référencées par des pages CMS
La détection d'orphelins ne vérifie que les associations produits, pas le contenu des pages CMS. Les images intégrées dans le HTML des pages CMS via des balises sont marquées comme orphelines et supprimées.
Note de résolution
Ajout d'une analyse du contenu CMS avant le marquage des images.
Échec des tâches de nettoyage pendant la suppression
Statistiques des tables mal affichées sur le tableau de bord
Les rapports de nettoyage mélangent les périmètres de boutique
Les formulaires de conservation masquent les valeurs héritées
Les permissions de base de données bloquent d’autres écrans de nettoyage
Désaccord entre paramètres de nettoyage et vérifications d’installation
Textes traduits du back-office
Renforcement de la sécurité
Suggestions risquées de nettoyage des dossiers de modules
Texte traduit corrompu
Le nettoyage planifié s’arrête sur une erreur
Modules mis de côté proposés à la suppression
Les pages du back-office ne s’ouvraient pas
Filtres des listes de nettoyage
Demandes de fonctionnalités
8
Implémenté
Prévisualisation avant nettoyage
Nettoyage planifié
Administration multilingue
Gestion de la licence
Mises à jour du module en un clic
Aperçu et approbation des nettoyages
Conservation adaptée au contexte
Restauration des sauvegardes de nettoyage
Journal des modifications
v1.1.62026-07-31
- Addedcomplete FR/DE/ES/IT/PL translations
- FixedAdd standard infrastructure checks, tag quality/monitoring checks
Versions précédentes
v1.2.02026-04-20
- Addedadmin menu management via MenuInstaller for streamlined module setup
- AddedLicense management tab with key management and renewal options
- Addedself-healing integrity checks for automatic diagnostics and repair
- Addedcomplete FR/DE/ES/IT/PL translations
- Improvedadmin list columns with visual badge indicators and multiselect filters
- Improvedsettings form rebuilt with modern configuration pattern
- Fixedadmin list filters — sorting, searching, and filtering now work correctly on all columns
v1.1.02026-01-09
- AddedPrestaShop 9 and Hummingbird theme compatibility
- AddedPS 9 Symfony cache pool cleanup support alongside legacy Smarty and media caches
- Improveddry-run mode to display exact estimated row counts before any deletion is performed
- Fixedaudit log not recording cleanup operations when PS log directory lacks write permissions
- Addedscheduled auto-cleanup via cron with configurable per-category retention periods
- Improvedorphaned image detection to correctly handle multi-shop shared product image sets
v1.0.02026-01-08
- Initialrelease of Cleanup Revolution
- InitialDatabase cleanup: removes orphaned records from cart, order, and search tables
- InitialDuplicate image detection and removal with before/after preview
- InitialCache cleanup: clears Smarty, media, and XML cache directories
- InitialDry-run mode shows exactly what would be deleted without making any changes
- InitialAudit log records every cleanup operation with row counts, categories, and timestamps
Demo
Testez le module complet avant d'acheter
Achetez la licence plus tard et gardez vos réglages.
- Votre démo de 30 jours Testez-le sur votre propre boutique pendant 30 jours à partir de la première installation.
- Boutique de démo prête Découvrez une boutique de démo prête dans votre navigateur.
- Sans inscription Ni compte, ni e-mail, ni domaine de boutique requis.
En téléchargeant, vous acceptez les conditions de la démo et la politique de confidentialité.
En ouvrant cette démo, vous acceptez les conditions de la démo et la politique de confidentialité.