Prestashop 1.7 Google maps backoffice ne fonctionne pas / API key manquante
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.
Comment trouve t-on cette page ? Je n’arrive pas à accéder au codage …
Merci du retour.
Pouvez-vous être plus explicite Solène sur ce que vous ne trouvez pas ?
Bonjour,
J’ai utilisé votre méthode, mais cela n’a pas fonctionné… L’API n’est toujours pas reconnue.
J’ai vidé les cache Navigateur et Prestashop, je suis en 1.7.
Merci
Vous avez bien mis un moyen de paiement sur votre compte Google, car Google fait payer ce service si vous dépasser le cota. Vous pouvez regarder dans la console Javascript les erreurs.