Bonjour @gabriel33,
C'est effectivement un sujet d'actualité. Pour PrestaShop 1.7.2.4 avec le thème Classic, la meilleure approche est d'utiliser les fonctionnalités natives et un thème enfant pour ne pas perdre tes modifications lors des mises à jour.
Voici comment procéder :
- Crée une Caractéristique de Produit :
- Va dans
Catalogue > Attributs & Caractéristiques > Caractéristiques.
- Clique sur
Ajouter une nouvelle caractéristique.
- Nomme-la par exemple :
Contenu IA.
- Enregistre.
- Ensuite, pour cette caractéristique, ajoute une
Valeur de caractéristique appelée Oui.
- Assigner la Caractéristique aux Produits :
- Pour chaque produit dont le contenu est généré par IA, va sur sa fiche produit dans le Back Office.
- Dans l'onglet
Caractéristiques, ajoute la caractéristique Contenu IA et sélectionne la valeur Oui.
- Modifier les Templates via un Thème Enfant :
- Si tu n'as pas de thème enfant, il faut en créer un basé sur le thème Classic. C'est essentiel.
- Copie les fichiers de template pertinents de
themes/classic/templates/catalog/ vers ton thème enfant (par exemple, themes/mon_theme_enfant/templates/catalog/).
- Pour la fiche produit, le fichier principal est
product.tpl mais les détails sont souvent dans des partiels comme _partials/product-details.tpl.
- Pour les miniatures, c'est
_partials/miniatures/product.tpl.
Pour afficher le badge sur la fiche produit (par exemple dans _partials/product-details.tpl juste avant la description), tu peux ajouter ce code Smarty :
{if isset($product.features)}
{foreach from=$product.features item=feature}
{if $feature.name == 'Contenu IA' && $feature.value == 'Oui'}
<div class="alert alert-info" role="alert">
<i class="material-icons">robot</i> Ce produit contient des éléments générés par IA.
</div>
{/if}
{/foreach}
{/if}
Pour les miniatures (_partials/miniatures/product.tpl), tu peux ajouter un indicateur plus petit, par exemple à côté du nom du produit. L'accès aux caractéristiques est similaire via $product.features. Tu peux mettre un petit icône ou un simple texte.
N'oublie pas de désactiver/réactiver le cache de Smarty dans Paramètres Avancés > Performances après tes modifications pour qu'elles soient prises en compte.