Depuis la version 1.7 de Prestashop, l’utilisation de Google maps en front office a été supprimé du module magasins. Mais il reste une utilisation de l’API Google maps dans le backoffice de Prestashop dans le détail des commandes.
Et comme Google oblige depuis quelques mois, d’avoir une clef API, hé bien la carte de l’adresse de facturation affiche une erreur, et génère une erreur Javascript 🙁
Certes cela ne va pas empêcher votre boutique de fonctionner 😉 mais un logisticien appréciera de pouvoir jeter un coup d’œil à la carte pour détecter une incohérence, si si je vous assure ils ont l’habitude, sont trop forts !
La solution simple pour corriger la clef API Google maps manquante de Prestashop
La solution est super simple, pas très propre car on est obligé de modifier un fichier du cœur de Prestashop, mais bon faute de mieux… Le fichier à modifier est :
controllers/admin/AdminOrdersController.php
À la ligne 336 modifier le code suivant :
$this->addJS('https://maps.googleapis.com/maps/api/js?v=3.exp');
en
$this->addJS('https://maps.googleapis.com/maps/api/js?v=3.exp&key=votreclefdeinie-sur-console.developers.google.com');
Pour générer votre clef d’API Google maps allez sur https://console.developers.google.com
Solution plus complexe mais plus propre et pérenne
La solution plus pérenne et propre est de faire un override de la classe AdminOrdersController. Cela vous assure qu’après une mise à jour du cœur de Prestashop le correctif fonctionnera toujours.
Conseil d’expert
Pour toute modification de code, nous vous recommandons de passer par une agence spécialisée ou un webmaster qualifié qui saura faire un override de Prestashop dans les règles de l’art. Car toute mauvaise manipulation peut bloquer complètement votre boutique. N’hésitez pas à nous contacter pour toute demande de développement Prestashop.