Nous souhaitons ajouter une colonne qui indique le nombre de ventes depuis un mois dans la grille des Déclinaisons
Nous pourrons ainsi :
Pour ajouter le champ à la liste des champs disponibles pour la grille des déclinaisons produit, cliquez sur le bouton de l'interface "Ajout de champ", puis saisissez les informations suivantes :
Quel est l'ID du champ ? : nb_sale_1_month
SC crée le champ, il faut maintenant renseigner dans la grille :
Nom du champ : Nb ventes depuis 1 mois
Table : Another table
Type : Juste affiché
Rafraîchir les déclinaisons : Non
Dans le panneau des Propriétés Avancées à droite, sélectionnez le menu SQL Select et renseignez :
return ',(SELECT SUM(od.product_quantity) AS nb_opq
FROM `'._DB_PREFIX_.'order_detail` od
INNER JOIN `'._DB_PREFIX_.'orders` o ON (od.id_order = o.id_order)
WHERE od.product_attribute_id=pa.id_product_attribute
AND o.valid=1
AND o.current_state IN (4,5)
AND o.date_add >= (SELECT DATE_ADD(NOW(), INTERVAL -1 MONTH))
LIMIT 1) AS nb_sale_1_month';
Dans le panneau des Propriétés Avancées à droite, sélectionnez le menu PHP Definition et renseignez :
$combArray[$combinaison['id_product_attribute']]['nb_sale_1_month'] = (int)$combinaison['nb_sale_1_month'];
On prend ici les commandes valides qui sont en état 4 ou 5 (voir le menu Commandes > Etat de PrestaShop pour la liste des états) et qui datent de moins d'un mois.
Pour obtenir les 3 derniers mois au lieu d'1 mois, à la première étape il vous faut changer pour nb_sale_3_month.
Ensuite, il vous faut modifier l'avant dernière ligne en INTERVAL -3 MONTH)).
Enfin, il vous faut modifier la dernière ligne pour remettre le nouvel ID de champ nb_sale_3_month
Enregistrez sur la barre d'outils
Fermez la fenêtre d'édition des champs personnalisés.
Le nouveau champ est présent dans la liste des champs disponibles, et vous pouvez l'ajouter à vos grilles.