[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"theme-db":3,"$fs1p9YA5mgbu7NmarX9j9UNr5BylRxBW6kEVk62M5qyA":22,"$fKnz2vuX4bZz1LbUTiuFsvSZ3e07l5_5fqNYp4Tzdhi8":91,"footer-db":172,"megamenu":191,"$fVkl-RuIMqxMT91Cm4GXBXAttUiM3hMU4DqQCNSczT20":246,"header-db":260},{"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",{"title":23,"slug":24,"metaDescription":25,"category":26,"tags":27,"difficulty":34,"psVersions":35,"content":39,"faq":40,"tldr":86,"readingTime":87,"generatedAt":88,"publishDate":88,"relatedArticles":89,"sourceCategory":90},"Import CSV PrestaShop : résoudre les problèmes d'affichage des réductions","import-csv-prestashop-probleme-affichage-reductions","Résolvez les erreurs d'affichage des réductions après un import CSV PrestaShop. Configuration PHP, MySQL et diagnostic complet pour imports volumineux.","catalogue",[28,29,30,31,32,33],"import csv","réductions","prix spécifiques","php.ini","configuration serveur","catalogue produits","intermediaire",[36,37,38],"1.6","1.7","8.x","\u003Ch2>Introduction\u003C\u002Fh2>\n\u003Cp>L'import CSV est le moyen le plus courant d'alimenter un catalogue PrestaShop en masse. Mais lorsque des réductions ou prix spécifiques entrent en jeu, un scénario frustrant se répète : l'import semble fonctionner, les données sont bien présentes en base de données, et pourtant les réductions ne s'affichent pas correctement en front-office.\u003C\u002Fp>\n\u003Cp>Ce problème a deux causes principales qu'il faut investiguer méthodiquement : une configuration serveur insuffisante qui tronque silencieusement l'import, ou un décalage entre les données importées et leur rendu visuel côté thème.\u003C\u002Fp>\n\u003Ch2>Étape 1 — Vérifier que les données sont réellement en base\u003C\u002Fh2>\n\u003Cp>Avant toute modification, le premier réflexe est de confirmer que le problème est bien un problème d'affichage et non d'import. Si les prix et réductions sont correctement enregistrés dans la base de données, le fichier CSV et le processus d'import ne sont pas en cause.\u003C\u002Fp>\n\u003Ch3>Requête de diagnostic rapide\u003C\u002Fh3>\n\u003Cpre>\u003Ccode class=\"language-sql\">\n-- Vérifier les prix spécifiques d'un produit\nSELECT ps.id_product, ps.reduction, ps.reduction_type,\n       ps.from, ps.to, ps.price\nFROM ps_specific_price ps\nWHERE ps.id_product = 123;\n\n-- Vérifier le prix de base du produit\nSELECT p.id_product, p.price, p.wholesale_price\nFROM ps_product p\nWHERE p.id_product = 123;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Si les données sont bien là, le problème se situe en aval : cache, thème ou configuration d'affichage. Si les données sont absentes ou incomplètes, l'import a été interrompu — passez à l'étape 2.\u003C\u002Fp>\n\u003Ch2>Étape 2 — Configurer correctement le serveur pour les imports volumineux\u003C\u002Fh2>\n\u003Cp>La majorité des imports CSV échouent silencieusement à cause de limites serveur trop basses. C'est particulièrement vrai sur les environnements de développement locaux (MAMP, WAMP, XAMPP) dont les configurations par défaut sont minimalistes.\u003C\u002Fp>\n\u003Ch3>Configuration PHP recommandée\u003C\u002Fh3>\n\u003Cp>Localisez votre fichier \u003Ccode>php.ini\u003C\u002Fcode> selon votre environnement :\u003C\u002Fp>\n\u003Ctr>\u003Cth>Environnement\u003C\u002Fth>\u003Cth>Chemin typique\u003C\u002Fth>\u003C\u002Ftr>\n\u003Ctr>\u003Cth>Ubuntu\u002FDebian (Apache)\u003C\u002Fth>\u003Cth>`\u002Fetc\u002Fphp\u002F8.2\u002Fapache2\u002Fphp.ini`\u003C\u002Fth>\u003C\u002Ftr>\n\u003Ctr>\u003Cth>Ubuntu\u002FDebian (FPM)\u003C\u002Fth>\u003Cth>`\u002Fetc\u002Fphp\u002F8.2\u002Ffpm\u002Fphp.ini`\u003C\u002Fth>\u003C\u002Ftr>\n\u003Ctr>\u003Cth>MAMP\u003C\u002Fth>\u003Cth>`\u002FApplications\u002FMAMP\u002Fbin\u002Fphp\u002FphpX.X\u002Fconf\u002Fphp.ini`\u003C\u002Fth>\u003C\u002Ftr>\n\u003Ctr>\u003Cth>WAMP\u003C\u002Fth>\u003Cth>`C:\\wamp64\\bin\\php\\phpX.X\\php.ini`\u003C\u002Fth>\u003C\u002Ftr>\n\u003Cblockquote>\u003Cp>\u003Cstrong>Note :\u003C\u002Fstrong> Sur les versions anciennes (Ubuntu 14.x avec PHP 5.x), le chemin était \u003Ccode>\u002Fetc\u002Fphp5\u002Fapache2\u002Fphp.ini\u003C\u002Fcode>. Adaptez selon votre version de PHP.\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cp>Appliquez ces valeurs, adaptées aux imports de catalogues conséquents :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ini\">\n; Temps d'exécution max (en secondes)\n; Un import de 5000 produits peut prendre plusieurs minutes\nmax_execution_time = 30000\n\n; Mémoire allouée à PHP\n; 256M minimum, 1024M recommandé pour les gros catalogues\nmemory_limit = 1024M\n\n; Taille maximale des données POST\npost_max_size = 500M\n\n; Taille maximale d'upload de fichier\nupload_max_filesize = 800M\n\n; Nombre maximum de variables d'entrée\n; Critique pour les imports avec beaucoup de colonnes\nmax_input_vars = 50000\n\n; Temps de lecture des données d'entrée (-1 = illimité)\nmax_input_time = -1\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Redémarrez Apache ou PHP-FPM après modification :\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">\n# Apache\nsudo systemctl restart apache2\n\n# PHP-FPM (PrestaShop 8.x recommande FPM)\nsudo systemctl restart php8.2-fpm\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Configuration MySQL \u002F MariaDB\u003C\u002Fh3>\n\u003Cp>Les imports volumineux peuvent aussi être bloqués côté base de données. Éditez ou créez le fichier de configuration MySQL :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">\n# MariaDB (PrestaShop 8.x)\nsudo nano \u002Fetc\u002Fmysql\u002Fmariadb.conf.d\u002F99-prestashop.cnf\n\n# MySQL classique\nsudo nano \u002Fetc\u002Fmysql\u002Fmysql.conf.d\u002F99-prestashop.cnf\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cpre>\u003Ccode class=\"language-ini\">\n[client]\nport = 3306\ndefault-character-set = utf8mb4\n\n[mysqld]\nmax_allowed_packet = 64M\ninnodb_buffer_pool_size = 256M\nwait_timeout = 28800\ninteractive_timeout = 28800\n\n[mysqldump]\nmax_allowed_packet = 64M\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cblockquote>\u003Cp>\u003Cstrong>PrestaShop 8.x :\u003C\u002Fstrong> Utilisez \u003Ccode>utf8mb4\u003C\u002Fcode> au lieu de \u003Ccode>utf8\u003C\u002Fcode> pour le jeu de caractères. C'est le standard depuis PrestaShop 1.7.6 et c'est indispensable pour gérer correctement les caractères spéciaux et emojis dans les descriptions produits.\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cpre>\u003Ccode class=\"language-bash\">\nsudo systemctl restart mariadb\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>Étape 3 — Diagnostiquer les problèmes d'affichage des réductions\u003C\u002Fh2>\n\u003Cp>Si les données sont en base mais les réductions ne s'affichent pas, plusieurs pistes sont à explorer.\u003C\u002Fp>\n\u003Ch3>Vider tous les caches\u003C\u002Fh3>\n\u003Cp>PrestaShop utilise plusieurs couches de cache qui peuvent retenir des prix obsolètes :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">\n# Vider le cache Smarty (PS 1.6\u002F1.7)\nrm -rf var\u002Fcache\u002Fprod\u002F*\nrm -rf var\u002Fcache\u002Fdev\u002F*\n\n# PrestaShop 8.x — via la console Symfony\nphp bin\u002Fconsole cache:clear --env=prod\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Dans le back-office : \u003Cstrong>Paramètres avancés → Performances → Vider le cache\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch3>Vérifier le format du CSV pour les réductions\u003C\u002Fh3>\n\u003Cp>Le format des colonnes de réduction dans le CSV PrestaShop est strict :\u003C\u002Fp>\n\u003Ctr>\u003Cth>Colonne\u003C\u002Fth>\u003Cth>Format attendu\u003C\u002Fth>\u003Cth>Exemple\u003C\u002Fth>\u003C\u002Ftr>\n\u003Ctr>\u003Cth>`reduction_price`\u003C\u002Fth>\u003Cth>Décimal avec point\u003C\u002Fth>\u003Cth>`10.00`\u003C\u002Fth>\u003C\u002Ftr>\n\u003Ctr>\u003Cth>`reduction_percent`\u003C\u002Fth>\u003Cth>Décimal sans symbole %\u003C\u002Fth>\u003Cth>`15.00`\u003C\u002Fth>\u003C\u002Ftr>\n\u003Ctr>\u003Cth>`reduction_from`\u003C\u002Fth>\u003Cth>Date YYYY-MM-DD\u003C\u002Fth>\u003Cth>`2026-01-01`\u003C\u002Fth>\u003C\u002Ftr>\n\u003Ctr>\u003Cth>`reduction_to`\u003C\u002Fth>\u003Cth>Date YYYY-MM-DD\u003C\u002Fth>\u003Cth>`2026-12-31`\u003C\u002Fth>\u003C\u002Ftr>\n\u003Cp>\u003Cstrong>Piège fréquent :\u003C\u002Fstrong> Excel transforme les décimaux avec une virgule (\u003Ccode>10,00\u003C\u002Fcode>) selon les paramètres régionaux. PrestaShop attend un point (\u003Ccode>10.00\u003C\u002Fcode>). Ouvrez votre CSV dans un éditeur de texte brut pour vérifier.\u003C\u002Fp>\n\u003Ch3>Vérifier les prix spécifiques dans le back-office\u003C\u002Fh3>\n\u003Cp>Accédez à \u003Cstrong>Catalogue → Produits → [Produit] → onglet Prix\u003C\u002Fstrong> et vérifiez que :\u003C\u002Fp>\n\u003Cul>\n\u003Cli>La réduction est bien listée dans la section \"Prix spécifiques\"\u003C\u002Fli>\n\u003Cli>Les dates de validité sont correctes (attention aux dates passées)\u003C\u002Fli>\n\u003Cli>Le type de réduction correspond (montant vs pourcentage)\u003C\u002Fli>\n\u003Cli>La devise est correcte\u003C\u002Fli>\n\u003Cli>Le groupe client ciblé est le bon\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>Étape 4 — Spécificités PrestaShop 8.x pour l'import\u003C\u002Fh2>\n\u003Cp>PrestaShop 8.x a modernisé le système d'import avec plusieurs améliorations :\u003C\u002Fp>\n\u003Cul>\n\u003Cli>**Import par lots (batch)** : les produits sont traités par paquets, ce qui réduit la consommation mémoire\u003C\u002Fli>\n\u003Cli>**Meilleure gestion des erreurs** : un rapport détaillé est généré en fin d'import\u003C\u002Fli>\n\u003Cli>**Support natif UTF-8MB4** : fini les problèmes d'encodage sur les descriptions\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Pour les très gros catalogues (+10 000 produits), privilégiez l'import en ligne de commande :\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">\nphp bin\u002Fconsole prestashop:import \\\n  --file=catalogue.csv \\\n  --entity=products \\\n  --lang=1 \\\n  --separator=\";\"\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>Bonnes pratiques pour un import CSV fiable\u003C\u002Fh2>\n\u003Col>\n\u003Cli>**Testez d'abord avec 5 produits** — Importez un échantillon réduit incluant des produits avec réductions pour valider le format avant l'import complet\u003C\u002Fli>\n\u003Cli>**Sauvegardez la base avant chaque import** — `mysqldump -u user -p prestashop > backup_avant_import.sql`\u003C\u002Fli>\n\u003Cli>**Utilisez le séparateur point-virgule** — Le séparateur par défaut de PrestaShop est `;`, pas la virgule\u003C\u002Fli>\n\u003Cli>**Encodez en UTF-8 sans BOM** — Vérifiable avec `file -bi votre_fichier.csv` sous Linux\u003C\u002Fli>\n\u003Cli>**Désactivez les modules de cache pendant l'import** — Les modules de cache tiers peuvent interférer avec l'indexation des prix\u003C\u002Fli>\n\u003Cli>**Réindexez après l'import** — Back-office → Paramètres avancés → Recherche → Réindexer, ou `php bin\u002Fconsole prestashop:search:reindex`\u003C\u002Fli>\n\u003C\u002Ful>",[41,44,47,50,53,56,59,62,65,68,71,74,77,80,83],{"q":42,"a":43},"Pourquoi mes réductions n'apparaissent pas après un import CSV PrestaShop ?","Deux causes principales : soit l'import a été interrompu silencieusement par des limites serveur trop basses (max_execution_time, memory_limit), soit les données sont bien en base mais le cache empêche leur affichage. Vérifiez d'abord en base de données (table ps_specific_price), puis videz tous les caches si les données sont présentes.",{"q":45,"a":46},"Quelles valeurs PHP recommandées pour importer un gros catalogue CSV dans PrestaShop ?","Pour un catalogue de plusieurs milliers de produits : max_execution_time = 30000, memory_limit = 1024M, post_max_size = 500M, upload_max_filesize = 800M, max_input_vars = 50000 et max_input_time = -1. Ces valeurs se configurent dans le fichier php.ini correspondant à votre environnement (Apache ou PHP-FPM).",{"q":48,"a":49},"Comment vérifier que les prix spécifiques sont bien enregistrés en base de données PrestaShop ?","Exécutez la requête SQL : SELECT * FROM ps_specific_price WHERE id_product = VOTRE_ID. Si les lignes existent avec les bonnes valeurs de reduction et reduction_type, le problème est un problème d'affichage (cache, thème) et non d'import.",{"q":51,"a":52},"Quel format de fichier CSV utiliser pour les réductions PrestaShop ?","Les montants doivent utiliser le point comme séparateur décimal (10.00 et non 10,00), les dates au format YYYY-MM-DD, et les pourcentages sans le symbole %. Le séparateur de colonnes par défaut est le point-virgule. Encodez le fichier en UTF-8 sans BOM.",{"q":54,"a":55},"MAMP ou WAMP bloque mon import CSV PrestaShop, que faire ?","Les environnements de développement locaux ont des limites PHP très basses par défaut. Localisez le php.ini utilisé (vérifiable via phpinfo()), augmentez max_execution_time, memory_limit et max_input_vars, puis redémarrez le serveur. Pour les très gros catalogues, envisagez un import en ligne de commande qui contourne les limites du navigateur.",{"q":57,"a":58},"Comment importer des produits avec réductions en ligne de commande sur PrestaShop 8 ?","Utilisez la console Symfony intégrée : php bin\u002Fconsole prestashop:import --file=catalogue.csv --entity=products --lang=1 --separator=\";\". Cette méthode est plus fiable pour les gros volumes car elle ne dépend pas des limites du navigateur ni du timeout Apache.",{"q":60,"a":61},"Faut-il configurer MySQL en plus de PHP pour les imports CSV PrestaShop ?","Oui. Augmentez max_allowed_packet à 64M minimum dans la configuration MySQL\u002FMariaDB pour éviter les erreurs sur les requêtes volumineuses générées par l'import. Augmentez aussi wait_timeout si vos imports durent longtemps.",{"q":63,"a":64},"Comment réindexer les prix après un import CSV PrestaShop ?","Allez dans Paramètres avancés → Recherche → Réindexer dans le back-office, ou utilisez la commande php bin\u002Fconsole prestashop:search:reindex. Pensez aussi à vider le cache Smarty et le cache Symfony (php bin\u002Fconsole cache:clear) pour que les nouveaux prix s'affichent correctement.",{"q":66,"a":67},"Mon import CSV semble réussir mais seuls certains produits ont leurs réductions, pourquoi ?","L'import a probablement été interrompu en cours de route par un timeout PHP ou une limite mémoire. Les premiers produits du fichier sont importés correctement, mais le processus s'arrête silencieusement au-delà d'un certain seuil. Augmentez max_execution_time et memory_limit, puis relancez l'import.",{"q":69,"a":70},"Comment éviter qu'Excel corrompe mon fichier CSV de produits PrestaShop ?","Excel modifie automatiquement les séparateurs décimaux et l'encodage. Préférez LibreOffice Calc qui permet de choisir explicitement l'encodage (UTF-8), le séparateur (point-virgule) et le format des nombres. Sinon, ouvrez le CSV dans un éditeur de texte brut (Notepad++, VS Code) pour vérifier le format avant import.",{"q":72,"a":73},"Les réductions importées s'affichent en back-office mais pas en front-office, que faire ?","Videz tous les caches (Smarty, Symfony, modules de cache tiers, CDN éventuel). Vérifiez ensuite que les dates de validité des réductions ne sont pas expirées et que le groupe client ciblé correspond au groupe du visiteur. Enfin, vérifiez que votre thème gère correctement l'affichage des prix barrés dans le template product-prices.tpl.",{"q":75,"a":76},"Quelle est la différence entre reduction_price et reduction_percent dans le CSV PrestaShop ?","reduction_price applique une réduction en montant fixe (ex : -10€), tandis que reduction_percent applique un pourcentage de réduction (ex : -15%). Dans le CSV, n'utilisez qu'une seule des deux colonnes par ligne. Si les deux sont remplies, PrestaShop peut produire un comportement imprévisible.",{"q":78,"a":79},"Comment sauvegarder ma base de données avant un import CSV massif ?","Exécutez mysqldump -u utilisateur -p nom_base > backup_avant_import.sql avant chaque import conséquent. Pour PrestaShop 8.x avec MariaDB, utilisez mariadb-dump à la place. Cette sauvegarde vous permettra de restaurer l'état initial en cas de problème avec l'import.",{"q":81,"a":82},"L'import CSV PrestaShop est très lent, comment l'accélérer ?","Désactivez les modules de cache et de recherche pendant l'import, utilisez l'import en ligne de commande plutôt que le back-office, et augmentez innodb_buffer_pool_size dans la configuration MySQL. Pour les catalogues de plus de 10 000 produits, découpez le CSV en lots de 2 000 à 5 000 lignes.",{"q":84,"a":85},"Puis-je importer des prix spécifiques par groupe client via CSV dans PrestaShop ?","Oui, le CSV PrestaShop supporte les colonnes id_group et id_customer pour cibler les réductions. Renseignez l'ID du groupe client concerné. Laissez id_customer vide pour appliquer la réduction à tout le groupe plutôt qu'à un client spécifique.","Les problèmes d'affichage des réductions après un import CSV PrestaShop viennent soit de limites serveur trop basses (PHP\u002FMySQL) qui tronquent silencieusement l'import, soit d'un cache non vidé alors que les données sont correctement enregistrées en base. Diagnostic en base d'abord, configuration serveur ensuite.",5,"2026-03-21T14:52:41.000Z",[],"Utilisation de PrestaShop : configuration et difficultés",{"columns":92},[93,109,139,160],{"title":94,"links":95},"Plateforme",[96,100,103,106],{"label":97,"href":98,"external":99},"Offre Starter (2 500 €)","\u002Foffre-starter",false,{"label":101,"href":102,"external":99},"Devenir Ambassadeur","\u002Fambassadeur",{"label":104,"href":105,"external":99},"Modules PrestaShop","\u002Fmodules",{"label":107,"href":108,"external":20},"CodeMyShop.com","https:\u002F\u002Fcodemyshop.com",{"title":110,"links":111},"Le Synedre",[112,115,118,121,124,127,130,133,136],{"label":113,"href":114,"external":99},"L'histoire","\u002Fsynedre",{"label":116,"href":117,"external":99},"Constitution","\u002Fsynedre\u002Fconstitution",{"label":119,"href":120,"external":99},"L'équipe","\u002Fequipe",{"label":122,"href":123,"external":99},"Le réacteur en direct","\u002Freacteur",{"label":125,"href":126,"external":99},"Le Drill (entraînement)","\u002Fdrill",{"label":128,"href":129,"external":99},"Protocole de réunion","\u002Fsynedre\u002Freunion",{"label":131,"href":132,"external":99},"Les agents IA","\u002Fagents-ia",{"label":134,"href":135,"external":99},"La Conduite","\u002Fsynedre\u002Fconduite",{"label":137,"href":138,"external":99},"Charte plateforme","\u002Fsynedre\u002Fcharte",{"title":140,"links":141},"Ressources",[142,145,148,151,154,157],{"label":143,"href":144,"external":99},"Blog","\u002Fblog",{"label":146,"href":147,"external":99},"Academy","\u002Facademy",{"label":149,"href":150,"external":99},"Dictionnaire","\u002Fdictionnaire",{"label":152,"href":153,"external":99},"Expertise PrestaShop","\u002Fexpertise",{"label":155,"href":156,"external":99},"Flywheel","\u002Fflywheel",{"label":158,"href":159,"external":99},"Manifeste","\u002Fmanifeste",{"title":161,"links":162},"À propos",[163,166,169],{"label":164,"href":165,"external":99},"Alexandre Carette","\u002Fa-propos",{"label":167,"href":168,"external":99},"Dossier de presse","\u002Fpresse",{"label":170,"href":171,"external":99},"Contact","\u002Fcontact",{"footer":173},{"theme":174,"description":175,"hours":175,"logo":176,"contact":179,"social":180,"bottomBar":190},"dark",null,{"src":177,"href":178,"alt":164},"\u002Flogo-ac.svg","\u002F",{"email":175,"phone":175,"address":175,"cta":175},[181,184,187],{"platform":182,"href":183,"label":182},"linkedin","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Falexandre-carette\u002F",{"platform":185,"href":186,"label":185},"malt","https:\u002F\u002Fwww.malt.fr\u002Fprofile\u002Falexandrecarette",{"platform":188,"href":189,"label":188},"github","https:\u002F\u002Fgithub.com\u002Fprest4cafe",{"copyright":175},{"items":192},[193,201,207,213,221,229,234,240],{"id":194,"type":195,"label":196,"href":153,"icon":175,"description":175,"badge":175,"groupTitle":175,"style":175,"gridColumns":175,"cssClass":175,"psCategoryId":175,"showPsChildren":99,"position":198,"children":199,"psChildren":200},41,"link",{"fr":197},"Expertise",0,[],[],{"id":202,"type":195,"label":203,"href":144,"icon":175,"description":175,"badge":175,"groupTitle":175,"style":175,"gridColumns":175,"cssClass":175,"psCategoryId":175,"showPsChildren":99,"position":204,"children":205,"psChildren":206},42,{"fr":143},1,[],[],{"id":208,"type":195,"label":209,"href":105,"icon":175,"description":175,"badge":175,"groupTitle":175,"style":175,"gridColumns":175,"cssClass":175,"psCategoryId":175,"showPsChildren":99,"position":210,"children":211,"psChildren":212},43,{"fr":104},2,[],[],{"id":214,"type":195,"label":215,"href":217,"icon":175,"description":175,"badge":175,"groupTitle":175,"style":175,"gridColumns":175,"cssClass":175,"psCategoryId":175,"showPsChildren":99,"position":218,"children":219,"psChildren":220},44,{"fr":216},"Outils IA","\u002Foutils-ia",3,[],[],{"id":222,"type":195,"label":223,"href":98,"icon":175,"description":175,"badge":175,"groupTitle":175,"style":225,"gridColumns":175,"cssClass":175,"psCategoryId":175,"showPsChildren":99,"position":226,"children":227,"psChildren":228},45,{"fr":224},"Offre Starter ✨",{"highlight":20},4,[],[],{"id":230,"type":195,"label":231,"href":147,"icon":175,"description":175,"badge":175,"groupTitle":175,"style":175,"gridColumns":175,"cssClass":175,"psCategoryId":175,"showPsChildren":99,"position":87,"children":232,"psChildren":233},46,{"fr":146},[],[],{"id":235,"type":195,"label":236,"href":165,"icon":175,"description":175,"badge":175,"groupTitle":175,"style":175,"gridColumns":175,"cssClass":175,"psCategoryId":175,"showPsChildren":99,"position":237,"children":238,"psChildren":239},47,{"fr":161},6,[],[],{"id":241,"type":195,"label":242,"href":171,"icon":175,"description":175,"badge":175,"groupTitle":175,"style":175,"gridColumns":175,"cssClass":175,"psCategoryId":175,"showPsChildren":99,"position":243,"children":244,"psChildren":245},48,{"fr":170},7,[],[],{"academy":247,"blog":248,"expertise":259},[],[249,253,256],{"title":250,"url":251,"score":204,"type":252},"PrestaShop headless avec Nuxt 3 : pourquoi séparer back et front","\u002Fblog\u002Fprestashop\u002Farchitecture\u002Fprestashop-headless-nuxt-separation-front-back","blog",{"title":254,"url":255,"score":204,"type":252},"PrestaShop headless : Nuxt 3, pas Next.js — le choix souverain","\u002Fblog\u002Fprestashop\u002Farchitecture\u002Fprestashop-headless-nuxt-nextjs-souverainete",{"title":257,"url":258,"score":204,"type":252},"Sylius rachète PrestaShop : ce que ça change pour vous","\u002Fblog\u002Fprestashop\u002Farchitecture\u002Fsylius-rachat-prestashop-headless-souverainete",[],{"header":261},{"logo":262,"topBar":265,"contactEmail":268,"features":269,"navBar":175},{"src":177,"alt":263,"text":164,"href":178,"class":264},"Alexandre Carette — Architecte E-commerce Souverain","h-10 w-10",{"message":175,"showLanguages":99,"align":266,"languages":267},"left",[],"contact@alexandrecarette.fr",{"showSearch":99,"showWishlist":99,"showLogin":20,"showContact":99,"showCart":99,"stickyHeader":20,"headerLayout":270},"inline"]