Compatibilite des Modules PrestaShop 9 : Ce qui Fonctionne et Comment Verifier
Passer a PrestaShop 9 signifie que vos modules peuvent avoir besoin de mises a jour. Avec Symfony 6.4 et PHP 8.1+, certains modules legacy ne fonctionneront plus sans modification.
Pourquoi les modules se brisent-ils sur PrestaShop 9?
PrestaShop 9 introduit plusieurs changements qui affectent la compatibilité des modules:
- Symfony 6.4 migration — de nombreux contrôleurs de back office ont été réécrits. Les modules qui surpassent les contrôleurs d'administration existants se casseront.
- PHP 8.1+ — modules utilisant des fonctionnalités PHP 7.x dépréciées déclencheront des erreurs.
- Modèles Twig — modèles back office ont été convertis de Smarty à Twig dans de nombreux domaines.
- Supprimé les crochets hérités — certains vieux crochets ont été dépréciés ou enlevés.
- Changements d'API — la nouvelle API Admin utilise un modèle d'authentification différent (OAuth).
Comment vérifier si un module est compatible avec PrestaShop 9
- Vérifiez la description du module — cherchez "PrestaShop 9" ou "PS 9" dans la liste de compatibilité
- Essai de mise en place — installer le module sur un environnement PS9 et tester toutes les fonctionnalités
- Vérifiez le code du module PHP — rechercher les fonctions dépréciées, les redéfinitions du contrôleur et la syntaxe PHP 7.x
- Contacter le développeur — demandez à l'auteur du module au sujet de la timeline de support PS9
PrestaShop 9 modules compatibles à partir de PrestaSOO
| Module | PS 1.7 | PS 8 | PS 9 | État |
|---|---|---|---|---|
| DocumenThemix | Oui | Oui | Oui | Mise à jour |
| Age Restriction 18+ | Oui | Oui | Oui | Mise à jour |
| PrestaSEO AI++ | - | Oui | Oui | Mise à jour |
| IConvert Promotions | Oui | Oui | Bientôt | En cours |
| Newsletter Popup | Oui | Oui | Bientôt | En cours |
| Countdown X Bar | Oui | Oui | Bientôt | En cours |
| SupprimerX | Oui | Oui | Bientôt | En cours |
Questions communes concernant le module PrestaShop 9
1. Legacy Admin Controller Override
Si un module remplace un contrôleur d'administration (par exemple AdminOrdersController), il ne fonctionnera pas car PS9 utilise des contrôleurs Symfony pour la plupart des pages d'administration. Le module doit être mis à jour pour utiliser des crochets compatibles Symfony ou des commandes CQRS.
2. Smarty Dépendances des modèles
Les modules qui modifient les modèles back office en utilisant des fichiers .tpl Smarty peuvent se briser dans des zones où PS9 a migré vers Twig. Les modèles de la boutique Smarty fonctionnent toujours avec le thème Classic, mais pas avec le nouveau thème Hummingbird.
3. PHP Compatibilité
Les problèmes courants PHP 8.x incluent : propriétés dynamiques dépréciées, vérification de type plus stricte et fonctions supprimées comme mysql * (devrait utiliser AOP).
Besoin d'aide ?
Si vous prévoyez une migration PrestaShop 9 et avez besoin de conseils de compatibilité de module, lisez notre 9 guide complet ou consultez notre Tableau de compatibilité PHP version.
Comment déclarer la compatibilité PrestaShop 9 dans votre module
Si vous développez des modules PrestaShop, vous devez mettre à jour la déclaration de compatibilité dans votre code de module:
// In your module main PHP file
public $ps_versions_compliancy = [
"min" => "8.0.0",
"max" => "9.99.99"
];Mettez également à jour votre fichier config.xml:
<compatibility>
<min>8.0.0</min>
<max>9.99.99</max>
</compatibility>Comment tester un module sur PrestaShop 9
- Configurer un environnement local PS9 utilisant Docker ou XAMPP avec PHP 8,3
- Installez votre module via le téléchargeur de module back office
- Vérifiez le journal des erreurs à
/var/log/ou activer le mode de débogage PS: ensemble_PS_MODE_DEV_àtrueenconfig/defines.inc.php - Tester toutes les fonctionnalités du module — installer, configurer, affichage de la réception, désinstaller
- Exécuter en mode strict PHP 8.3 pour attraper les avertissements de déprécation
- Test avec thème Hummingbird si votre module ajoute des éléments de bureau
Tableau complet de compatibilité du module PrestaSOO
| Module | PS 1.7 | PS 8 | PS 9 | PHP 8,3 | Annexe |
|---|---|---|---|---|---|
| DocumenThemix | ✓ | ✓ | ✓ | ✓ | Mise à jour complète |
| Age Restriction 18+ | ✓ | ✓ | ✓ | ✓ | Mise à jour complète |
| PrestaSEO AI++ | — | ✓ | ✓ | ✓ | Mise à jour complète |
| IConvert Promotions | ✓ | ✓ | Bientôt | ✓ | Mise à jour en cours |
| Newsletter Popup | ✓ | ✓ | Bientôt | ✓ | Mise à jour en cours |
| Countdown X Bar | ✓ | ✓ | Bientôt | ✓ | Mise à jour en cours |
| SupprimerX | ✓ | ✓ | Bientôt | ✓ | Mise à jour en cours |
Liste de contrôle de compatibilité du module PrestaShop 9
| Vérification | Que chercher |
|---|---|
| Syntaxe PHP 8.1+ | Aucune fonction dépréciée, aucune propriété dynamique sans déclaration |
| Pas d'antécédents d'administration | Module ne remplace pas AdminOrdersController, AdminProductsController etc. |
| Crochets compatibles avec le M23 | Utilisations actionXxx et displayXxx crochets, pas de vieux crochets |
| Smarty vs Twig | Front office: Smarty toujours OK. Back office: doit être Twig pour les pages PS9 |
| Service Web vs API Admin | Legacy Webservice fonctionne toujours; API Admin préférée pour les nouvelles intégrations |
| Dépendances des compositeurs | Tous les paquets fournisseurs supportent PHP 8.1+ |
Foire aux questions
Tous les PrestaShop 8 modules fonctionnent-ils sur PS9?
Pas automatiquement. Les modules qui ajoutent seulement la fonctionnalité de la réception (bannières, popups, éléments de page de produit) fonctionnent généralement sans changement. Les modules qui remplacent les contrôleurs d'administration ou utilisent les fonctionnalités PHP 7.x dépréciées devront être mis à jour.
Où puis-je vérifier la compatibilité des modules officiels?
Vérifiez la liste des modules sur le PrestaShop Addons Marché — chaque module affiche ses versions PS compatibles. Toujours vérifier sur un environnement de mise en scène avant d'améliorer la production.
Que se passe-t-il si j'installe un module incompatible sur PS9?
PrestaShop affichera généralement un avertissement de compatibilité. Dans le pire des cas, le module peut causer une erreur fatale PHP. Activer le mode de débogage avant de tester les modules incompatibles, et toujours avoir une sauvegarde prête.
Countdown x Bar
Xleft
Jump to Checkout
Accessibility Guard
SOO Agent Gateway
SOO Agent Catalog Tools
SOO Agent SEO Tools
GDPR
