[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"theme-db":3,"$fKnz2vuX4bZz1LbUTiuFsvSZ3e07l5_5fqNYp4Tzdhi8":22,"$fw9yxm-y3n2Hkbt8-hFbz8QOwYD474bdyHnO2_sF_luI":103,"megamenu":143,"footer-db":199,"header-db":217,"$fNxHP0wUj7RUnGuyPo8_NiK3UYjn8nSZ881eMXJx53uM":228},{"theme":4},{"colors":5,"typography":13,"ui":17,"defaultColorMode":21},{"primary":6,"secondary":7,"background":8,"foreground":9,"muted":10,"headerBg":11,"footerBg":12,"topBarBg":9,"topBarText":11},"#4F46E5","#0D9488","#F9FAFB","#111827","#6B7280","#ffffff","#020617",{"fontFamily":14,"fontUrl":15,"baseFontSize":16},"Inter, system-ui, sans-serif","https:\u002F\u002Ffonts.googleapis.com\u002Fcss2?family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,700;0,800;0,900;1,400;1,700&display=swap","16px",{"borderRadius":18,"contentWidth":19,"shadow":20},"lg","7xl",true,"light",{"columns":23},[24,40,70,91],{"title":25,"links":26},"Plateforme",[27,31,34,37],{"label":28,"href":29,"external":30},"Offre Starter (2 500 €)","\u002Foffre-starter",false,{"label":32,"href":33,"external":30},"Devenir Ambassadeur","\u002Fambassadeur",{"label":35,"href":36,"external":30},"Modules PrestaShop","\u002Fmodules",{"label":38,"href":39,"external":20},"CodeMyShop.com","https:\u002F\u002Fcodemyshop.com",{"title":41,"links":42},"Le Synedre",[43,46,49,52,55,58,61,64,67],{"label":44,"href":45,"external":30},"L'histoire","\u002Fsynedre",{"label":47,"href":48,"external":30},"Constitution","\u002Fsynedre\u002Fconstitution",{"label":50,"href":51,"external":30},"L'équipe","\u002Fequipe",{"label":53,"href":54,"external":30},"Le réacteur en direct","\u002Freacteur",{"label":56,"href":57,"external":30},"Le Drill (entraînement)","\u002Fdrill",{"label":59,"href":60,"external":30},"Protocole de réunion","\u002Fsynedre\u002Freunion",{"label":62,"href":63,"external":30},"Les agents IA","\u002Fagents-ia",{"label":65,"href":66,"external":30},"La Conduite","\u002Fsynedre\u002Fconduite",{"label":68,"href":69,"external":30},"Charte plateforme","\u002Fsynedre\u002Fcharte",{"title":71,"links":72},"Ressources",[73,76,79,82,85,88],{"label":74,"href":75,"external":30},"Blog","\u002Fblog",{"label":77,"href":78,"external":30},"Academy","\u002Facademy",{"label":80,"href":81,"external":30},"Dictionnaire","\u002Fdictionnaire",{"label":83,"href":84,"external":30},"Expertise PrestaShop","\u002Fexpertise",{"label":86,"href":87,"external":30},"Flywheel","\u002Fflywheel",{"label":89,"href":90,"external":30},"Manifeste","\u002Fmanifeste",{"title":92,"links":93},"À propos",[94,97,100],{"label":95,"href":96,"external":30},"Alexandre Carette","\u002Fa-propos",{"label":98,"href":99,"external":30},"Dossier de presse","\u002Fpresse",{"label":101,"href":102,"external":30},"Contact","\u002Fcontact",{"title":104,"slug":105,"metaDescription":106,"category":107,"tags":108,"difficulty":116,"psVersions":117,"content":121,"faq":122,"tldr":138,"readingTime":139,"generatedAt":140,"publishDate":140,"relatedArticles":141,"sourceCategory":142},"Images en HTTP au lieu de HTTPS sur PrestaShop : diagnostic et solutions","images-http-au-lieu-de-https-prestashop-contenu-mixte","Résolvez le problème de contenu mixte HTTP\u002FHTTPS sur PrestaShop. Diagnostic complet, configuration SSL, correction des templates et alternatives modernes.","securite",[109,110,111,112,113,114,115,107],"ssl","https","contenu-mixte","mixed-content","templates","smarty","performance","intermediaire",[118,119,120],"1.6","1.7","8.x","\u003Ch2>Le problème du contenu mixte sur PrestaShop\u003C\u002Fh2>\n\u003Cp>Vous avez activé le SSL sur votre boutique PrestaShop, votre URL affiche bien le cadenas HTTPS… mais certaines images persistent à se charger en HTTP. Le navigateur bloque alors ces ressources ou affiche un avertissement \"contenu mixte\" (mixed content), cassant votre cadenas sécurisé et dégradant la confiance de vos visiteurs.\u003C\u002Fp>\n\u003Cp>Ce problème est l'un des plus fréquents après une migration vers HTTPS. Il touche aussi bien les images produits que les éléments personnalisés ajoutés dans les templates Smarty. Voici un guide complet pour diagnostiquer et corriger définitivement ce problème.\u003C\u002Fp>\n\u003Ch2>Comprendre le contenu mixte (mixed content)\u003C\u002Fh2>\n\u003Cp>Lorsqu'une page servie en HTTPS charge des ressources (images, scripts, CSS) via HTTP, le navigateur considère cela comme du \u003Cstrong>contenu mixte\u003C\u002Fstrong>. Il existe deux types :\u003C\u002Fp>\n\u003Cul>\n\u003Cli>**Mixed content passif** (images, vidéos, audio) : le navigateur peut les charger avec un avertissement, mais le cadenas passe en mode dégradé\u003C\u002Fli>\n\u003Cli>**Mixed content actif** (scripts, CSS, iframes) : le navigateur bloque purement et simplement la ressource\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Dans les deux cas, Google Chrome et Firefox signalent le problème dans la console développeur (F12 → Console), avec des messages du type :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-\">\nMixed Content: The page at 'https:\u002F\u002Fexample.com\u002Fproduit' was loaded over HTTPS,\nbut requested an insecure image 'http:\u002F\u002Fexample.com\u002Fthemes\u002Fmon-theme\u002Fimg\u002Fenstock.jpg'.\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>Étape 1 : Vérifier la configuration SSL dans PrestaShop\u003C\u002Fh2>\n\u003Cp>Avant de toucher au moindre template, assurez-vous que la configuration SSL est complète dans le back-office.\u003C\u002Fp>\n\u003Ch3>Sur PrestaShop 1.6\u003C\u002Fh3>\n\u003Cp>Rendez-vous dans \u003Cstrong>Préférences → Général\u003C\u002Fstrong> et vérifiez que les deux options sont activées :\u003C\u002Fp>\n\u003Cul>\n\u003Cli>**Activer le SSL** : Oui\u003C\u002Fli>\n\u003Cli>**Activer le SSL sur toutes les pages** : Oui\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Sur PrestaShop 1.7 et 8.x\u003C\u002Fh3>\n\u003Cp>Le chemin a changé : \u003Cstrong>Paramètres de la boutique → Général\u003C\u002Fstrong>. Les mêmes deux options doivent être sur \"Oui\".\u003C\u002Fp>\n\u003Cblockquote>\u003Cp>\u003Cstrong>Attention :\u003C\u002Fstrong> Si vous activez le SSL sur toutes les pages, assurez-vous que votre certificat SSL est bien installé et valide sur le serveur. Sans cela, votre boutique deviendra inaccessible.\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cp>Vérifiez également dans la base de données que les URLs sont cohérentes :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-sql\">\nSELECT * FROM ps_configuration\nWHERE name IN ('PS_SSL_ENABLED', 'PS_SSL_ENABLED_EVERYWHERE', 'PS_SHOP_DOMAIN', 'PS_SHOP_DOMAIN_SSL');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Les valeurs \u003Ccode>PS_SHOP_DOMAIN\u003C\u002Fcode> et \u003Ccode>PS_SHOP_DOMAIN_SSL\u003C\u002Fcode> doivent être identiques (votre nom de domaine sans protocole).\u003C\u002Fp>\n\u003Ch2>Étape 2 : Identifier les images fautives dans les templates\u003C\u002Fh2>\n\u003Cp>Le problème vient souvent d'URLs codées en dur dans les fichiers \u003Ccode>.tpl\u003C\u002Fcode> (Smarty) de votre thème. C'est typiquement le cas lorsque vous avez ajouté des images personnalisées — par exemple, des icônes de disponibilité stock — directement dans le template produit.\u003C\u002Fp>\n\u003Cp>Un code comme celui-ci est problématique :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-smarty\">\n{* ❌ URL absolue en dur — provoque du contenu mixte *}\n&lt;img src=\"http:\u002F\u002Fmonsite.com\u002Fthemes\u002Fmon-theme\u002Fimg\u002Fenstock.jpg\" alt=\"En stock\" \u002F&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Méthodologie de diagnostic\u003C\u002Fh3>\n\u003Col>\n\u003Cli>**Identifiez le bon fichier template** : commentez le bloc suspect pour confirmer que vous éditez le bon fichier.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cpre>\u003Ccode class=\"language-smarty\">\n{* Commentaire temporaire pour test *}\n{*\n&lt;img src=\"http:\u002F\u002Fmonsite.com\u002Fthemes\u002Fmon-theme\u002Fimg\u002Fenstock.jpg\" alt=\"En stock\" \u002F&gt;\n*}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Col>\n\u003Cli>**Videz le cache des templates** : dans le back-office, allez dans **Paramètres avancés → Performances** et cliquez sur \"Vider le cache\". Vérifiez aussi que la **recompilation des templates** est activée (\"Forcer la compilation\" en développement).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Col>\n\u003Cli>**Vérifiez les caches serveur** : si vous utilisez un cache serveur (Varnish, OPcache, cache Nginx), purgez-le également. Un cache persistant peut continuer à servir l'ancienne version du template pendant des heures.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Col>\n\u003Cli>**Confirmez le thème actif** : cela peut sembler évident, mais vérifiez que le thème actif dans le back-office est bien celui dont vous modifiez les fichiers. Un thème enfant peut surcharger le template que vous éditez dans le thème parent.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>Étape 3 : Corriger les URLs dans les templates\u003C\u002Fh2>\n\u003Ch3>Solution 1 : Utiliser des URLs relatives au protocole\u003C\u002Fh3>\n\u003Cp>La correction la plus simple consiste à utiliser des chemins relatifs à la racine du serveur :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-smarty\">\n{* ✅ Chemin relatif — fonctionne en HTTP comme en HTTPS *}\n&lt;img src=\"\u002Fthemes\u002Fmon-theme\u002Fimg\u002Fenstock.jpg\" alt=\"En stock\" \u002F&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>En supprimant le protocole et le domaine, le navigateur utilisera automatiquement le même protocole que la page.\u003C\u002Fp>\n\u003Ch3>Solution 2 : Utiliser les variables Smarty de PrestaShop\u003C\u002Fh3>\n\u003Cp>C'est la méthode recommandée. PrestaShop expose des variables Smarty qui pointent vers les bons répertoires :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-smarty\">\n{* ✅ PrestaShop 1.6 — variable Smarty native *}\n&lt;img src=\"{$img_dir}enstock.jpg\" alt=\"En stock\" \u002F&gt;\n\n{* ✅ PrestaShop 1.7+ — utiliser l'asset du thème *}\n&lt;img src=\"{$urls.img_url}enstock.jpg\" alt=\"En stock\" \u002F&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Sur PrestaShop 8.x, la syntaxe reste la même qu'en 1.7 pour les templates Smarty classiques. Si vous utilisez un thème Symfony\u002FTwig (ce qui reste rare), la syntaxe sera différente :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-twig\">\n{# PrestaShop 8.x avec Twig #}\n&lt;img src=\"{{ asset('themes\u002Fmon-theme\u002Fassets\u002Fimg\u002Fenstock.jpg') }}\" alt=\"En stock\" \u002F&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Solution 3 : Utiliser des URLs protocol-relative\u003C\u002Fh3>\n\u003Cp>Bien que cette technique soit de moins en moins recommandée (car tout devrait être en HTTPS aujourd'hui), elle fonctionne encore :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-smarty\">\n{* ⚠️ Protocol-relative — héritera du protocole de la page *}\n&lt;img src=\"\u002F\u002Fmonsite.com\u002Fthemes\u002Fmon-theme\u002Fimg\u002Fenstock.jpg\" alt=\"En stock\" \u002F&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>Étape 4 : La meilleure solution — remplacer les images par des icônes\u003C\u002Fh2>\n\u003Cp>Pour des indicateurs visuels comme la disponibilité en stock, l'approche la plus performante est d'abandonner les images au profit d'\u003Cstrong>icônes vectorielles\u003C\u002Fstrong>. Vous y gagnez en performance (pas de requête HTTP supplémentaire), en flexibilité (taille et couleur modifiables en CSS) et vous éliminez définitivement le problème de contenu mixte.\u003C\u002Fp>\n\u003Ch3>Avec Font Awesome (PrestaShop 1.6)\u003C\u002Fh3>\n\u003Cp>PrestaShop 1.6 inclut Font Awesome nativement. Attention cependant : les noms de classes ont changé entre les versions de Font Awesome. Si \u003Ccode>fa-check\u003C\u002Fcode> ou \u003Ccode>fa-close\u003C\u002Fcode> ne fonctionnent pas, vérifiez dans le fichier \u003Ccode>global.css\u003C\u002Fcode> de votre thème quelle version est chargée.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-smarty\">\n&lt;label&gt;En stock :&lt;\u002Flabel&gt;\n{if $product-&gt;quantity &lt;= 0}\n    &lt;i class=\"fa fa-times\" style=\"color: #e74c3c;\" aria-hidden=\"true\"&gt;&lt;\u002Fi&gt;\n    &lt;span class=\"sr-only\"&gt;Rupture de stock&lt;\u002Fspan&gt;\n{else}\n    &lt;i class=\"fa fa-check\" style=\"color: #27ae60;\" aria-hidden=\"true\"&gt;&lt;\u002Fi&gt;\n    &lt;span class=\"sr-only\"&gt;Disponible&lt;\u002Fspan&gt;\n{\u002Fif}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cblockquote>\u003Cp>\u003Cstrong>Note :\u003C\u002Fstrong> \u003Ccode>fa-close\u003C\u002Fcode> a été renommé \u003Ccode>fa-times\u003C\u002Fcode> dans Font Awesome 4.x. Vérifiez votre version si l'icône ne s'affiche pas.\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Ch3>Avec Material Icons ou SVG inline (PrestaShop 1.7 \u002F 8.x)\u003C\u002Fh3>\n\u003Cp>Sur les versions modernes, préférez les SVG inline pour un contrôle total et zéro dépendance externe :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-smarty\">\n{* PrestaShop 1.7 \u002F 8.x — SVG inline *}\n&lt;span class=\"stock-indicator\"&gt;\n{if $product.quantity &lt;= 0}\n    &lt;svg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\"\n         fill=\"none\" stroke=\"#e74c3c\" stroke-width=\"2\" stroke-linecap=\"round\"&gt;\n        &lt;line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"&gt;&lt;\u002Fline&gt;\n        &lt;line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"&gt;&lt;\u002Fline&gt;\n    &lt;\u002Fsvg&gt;\n    &lt;span&gt;Rupture de stock&lt;\u002Fspan&gt;\n{else}\n    &lt;svg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\"\n         fill=\"none\" stroke=\"#27ae60\" stroke-width=\"2\" stroke-linecap=\"round\"&gt;\n        &lt;polyline points=\"20 6 9 17 4 12\"&gt;&lt;\u002Fpolyline&gt;\n    &lt;\u002Fsvg&gt;\n    &lt;span&gt;En stock&lt;\u002Fspan&gt;\n{\u002Fif}\n&lt;\u002Fspan&gt;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>Vérification globale : traquer tout le contenu mixte\u003C\u002Fh2>\n\u003Cp>Au-delà des templates, d'autres sources peuvent provoquer du contenu mixte :\u003C\u002Fp>\n\u003Ch3>Dans la base de données\u003C\u002Fh3>\n\u003Cp>Les descriptions produits, pages CMS et contenus éditoriaux peuvent contenir des URLs en HTTP :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-sql\">\n-- Trouver les images HTTP dans les descriptions produits\nSELECT id_product, description\nFROM ps_product_lang\nWHERE description LIKE '%src=\"http:%'\n   OR description LIKE '%src=\\\"http:%';\n\n-- Corriger en masse (ATTENTION : faites un backup avant !)\nUPDATE ps_product_lang\nSET description = REPLACE(description, 'http:\u002F\u002Fmonsite.com', 'https:\u002F\u002Fmonsite.com')\nWHERE description LIKE '%http:\u002F\u002Fmonsite.com%';\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Dans les modules\u003C\u002Fh3>\n\u003Cp>Certains modules tiers injectent leurs propres assets en HTTP. Vérifiez dans la console navigateur quelles ressources sont bloquées et identifiez le module responsable.\u003C\u002Fp>\n\u003Ch3>Forcer HTTPS au niveau serveur\u003C\u002Fh3>\n\u003Cp>En complément des corrections PrestaShop, ajoutez une redirection HTTPS systématique dans votre \u003Ccode>.htaccess\u003C\u002Fcode> :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-apache\">\n# Forcer HTTPS\nRewriteEngine On\nRewriteCond %{HTTPS} off\nRewriteRule ^(.*)$ https:\u002F\u002F%{HTTP_HOST}%{REQUEST_URI} [L,R=301]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Ou via Nginx :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-nginx\">\nserver {\n    listen 80;\n    server_name monsite.com www.monsite.com;\n    return 301 https:\u002F\u002F$host$request_uri;\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Header CSP pour détecter les fuites\u003C\u002Fh3>\n\u003Cp>Pour monitorer le contenu mixte sans casser votre site, utilisez le header Content-Security-Policy en mode rapport uniquement :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-apache\">\nHeader set Content-Security-Policy-Report-Only \"default-src https:; report-uri \u002Fcsp-report\"\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>Checklist de migration HTTPS complète\u003C\u002Fh2>\n\u003Col>\n\u003Cli>☑ Certificat SSL installé et valide\u003C\u002Fli>\n\u003Cli>☑ SSL activé dans le back-office PrestaShop (les deux options)\u003C\u002Fli>\n\u003Cli>☑ URLs de la boutique en HTTPS dans la configuration\u003C\u002Fli>\n\u003Cli>☑ Templates vérifiés (aucune URL HTTP en dur)\u003C\u002Fli>\n\u003Cli>☑ Base de données nettoyée (descriptions, CMS, modules)\u003C\u002Fli>\n\u003Cli>☑ Redirection 301 HTTP → HTTPS au niveau serveur\u003C\u002Fli>\n\u003Cli>☑ Cache vidé (PrestaShop + serveur)\u003C\u002Fli>\n\u003Cli>☑ Google Search Console mise à jour avec la propriété HTTPS\u003C\u002Fli>\n\u003Cli>☑ Sitemap régénéré avec des URLs HTTPS\u003C\u002Fli>\n\u003C\u002Ful>",[123,126,129,132,135],{"q":124,"a":125},"Pourquoi mon cadenas HTTPS est barré alors que j'ai activé le SSL dans PrestaShop ?","Le cadenas barré ou dégradé indique la présence de contenu mixte : votre page est en HTTPS mais certaines ressources (images, scripts, CSS) se chargent encore en HTTP. Ouvrez la console du navigateur (F12) pour identifier les ressources fautives. Les causes les plus fréquentes sont des URLs codées en dur dans les templates Smarty, des images dans les descriptions produits en base de données, ou des modules tiers qui injectent leurs assets en HTTP.",{"q":127,"a":128},"Comment corriger en masse les URLs HTTP dans la base de données PrestaShop ?","Faites d'abord un backup complet de votre base de données. Ensuite, utilisez des requêtes UPDATE avec REPLACE sur les tables ps_product_lang (descriptions), ps_cms_lang (pages CMS), ps_category_lang (catégories) et ps_manufacturer_lang (fabricants). Par exemple : UPDATE ps_product_lang SET description = REPLACE(description, 'http:\u002F\u002Fmonsite.com', 'https:\u002F\u002Fmonsite.com'). Vérifiez aussi les tables des modules que vous utilisez.",{"q":130,"a":131},"Faut-il utiliser des images ou des icônes Font Awesome pour les indicateurs de stock ?","Privilégiez les icônes vectorielles (Font Awesome, SVG inline) plutôt que des images bitmap. Les avantages sont multiples : pas de requête HTTP supplémentaire (meilleure performance), rendu net sur tous les écrans Retina, taille et couleur modifiables en CSS, et aucun risque de contenu mixte HTTP\u002FHTTPS. Sur PrestaShop 1.6, Font Awesome est déjà inclus. Sur PrestaShop 8.x, préférez les SVG inline pour éviter toute dépendance externe.",{"q":133,"a":134},"La recompilation des templates Smarty est activée mais mes modifications ne s'affichent pas. Que faire ?","Plusieurs couches de cache peuvent interférer. Vérifiez dans cet ordre : 1) Videz le cache PrestaShop (Paramètres avancés → Performances). 2) Passez la compilation des templates sur « Forcer la compilation ». 3) Purgez le cache de votre navigateur ou testez en navigation privée. 4) Si vous avez un cache serveur (Varnish, OPcache, cache Nginx ou un CDN comme Cloudflare), purgez-le aussi. 5) Assurez-vous que vous modifiez bien le thème actif et pas un autre thème ou un thème parent surchargé par un thème enfant.",{"q":136,"a":137},"La migration HTTPS a-t-elle un impact sur le référencement SEO de ma boutique PrestaShop ?","Oui, et il est positif à moyen terme. Google considère HTTPS comme un signal de classement depuis 2014. Cependant, une migration mal faite peut temporairement affecter votre SEO. Assurez-vous de mettre en place des redirections 301 de toutes les URLs HTTP vers HTTPS, de mettre à jour votre sitemap XML, de déclarer la nouvelle propriété HTTPS dans Google Search Console, et de corriger tous les liens internes. Le contenu mixte résiduel peut aussi nuire à l'expérience utilisateur, ce qui impacte indirectement le SEO via les signaux Core Web Vitals.","Le contenu mixte HTTP\u002FHTTPS sur PrestaShop provient généralement d'URLs codées en dur dans les templates Smarty ou dans la base de données. La solution : utiliser des chemins relatifs ou les variables Smarty natives, et remplacer les images d'indicateurs par des icônes vectorielles SVG pour de meilleures performances.",7,"2026-03-21T12:58:28.000Z",[],"PrestaShop pour les développeurs",{"items":144},[145,154,160,166,174,182,188,194],{"id":146,"type":147,"label":148,"href":84,"icon":150,"description":150,"badge":150,"groupTitle":150,"style":150,"gridColumns":150,"cssClass":150,"psCategoryId":150,"showPsChildren":30,"position":151,"children":152,"psChildren":153},41,"link",{"fr":149},"Expertise",null,0,[],[],{"id":155,"type":147,"label":156,"href":75,"icon":150,"description":150,"badge":150,"groupTitle":150,"style":150,"gridColumns":150,"cssClass":150,"psCategoryId":150,"showPsChildren":30,"position":157,"children":158,"psChildren":159},42,{"fr":74},1,[],[],{"id":161,"type":147,"label":162,"href":36,"icon":150,"description":150,"badge":150,"groupTitle":150,"style":150,"gridColumns":150,"cssClass":150,"psCategoryId":150,"showPsChildren":30,"position":163,"children":164,"psChildren":165},43,{"fr":35},2,[],[],{"id":167,"type":147,"label":168,"href":170,"icon":150,"description":150,"badge":150,"groupTitle":150,"style":150,"gridColumns":150,"cssClass":150,"psCategoryId":150,"showPsChildren":30,"position":171,"children":172,"psChildren":173},44,{"fr":169},"Outils IA","\u002Foutils-ia",3,[],[],{"id":175,"type":147,"label":176,"href":29,"icon":150,"description":150,"badge":150,"groupTitle":150,"style":178,"gridColumns":150,"cssClass":150,"psCategoryId":150,"showPsChildren":30,"position":179,"children":180,"psChildren":181},45,{"fr":177},"Offre Starter ✨",{"highlight":20},4,[],[],{"id":183,"type":147,"label":184,"href":78,"icon":150,"description":150,"badge":150,"groupTitle":150,"style":150,"gridColumns":150,"cssClass":150,"psCategoryId":150,"showPsChildren":30,"position":185,"children":186,"psChildren":187},46,{"fr":77},5,[],[],{"id":189,"type":147,"label":190,"href":96,"icon":150,"description":150,"badge":150,"groupTitle":150,"style":150,"gridColumns":150,"cssClass":150,"psCategoryId":150,"showPsChildren":30,"position":191,"children":192,"psChildren":193},47,{"fr":92},6,[],[],{"id":195,"type":147,"label":196,"href":102,"icon":150,"description":150,"badge":150,"groupTitle":150,"style":150,"gridColumns":150,"cssClass":150,"psCategoryId":150,"showPsChildren":30,"position":139,"children":197,"psChildren":198},48,{"fr":101},[],[],{"footer":200},{"theme":201,"description":150,"hours":150,"logo":202,"contact":205,"social":206,"bottomBar":216},"dark",{"src":203,"href":204,"alt":95},"\u002Flogo-ac.svg","\u002F",{"email":150,"phone":150,"address":150,"cta":150},[207,210,213],{"platform":208,"href":209,"label":208},"linkedin","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Falexandre-carette\u002F",{"platform":211,"href":212,"label":211},"malt","https:\u002F\u002Fwww.malt.fr\u002Fprofile\u002Falexandrecarette",{"platform":214,"href":215,"label":214},"github","https:\u002F\u002Fgithub.com\u002Fprest4cafe",{"copyright":150},{"header":218},{"logo":219,"topBar":222,"contactEmail":225,"features":226,"navBar":150},{"src":203,"alt":220,"text":95,"href":204,"class":221},"Alexandre Carette — Architecte E-commerce Souverain","h-10 w-10",{"message":150,"showLanguages":30,"align":223,"languages":224},"left",[],"contact@alexandrecarette.fr",{"showSearch":30,"showWishlist":30,"showLogin":20,"showContact":30,"showCart":30,"stickyHeader":20,"headerLayout":227},"inline",{"academy":229,"blog":230,"expertise":235},[],[231],{"title":232,"url":233,"score":157,"type":234},"Pourquoi je n'utilise pas OpenClaw sur mes projets PrestaShop","\u002Fblog\u002Fsecurite\u002Fcybersecurite\u002Fopenclaw-prestashop-securite-alternative","blog",[]]