Introduction
Notre client a un très gros volume d’images à importer dans un PIM Akeneo Community Edition et souhaitait pouvoir automatiser cette tâche. Après avoir défini une norme de nommage pour les images, nous avons, à l’aide de Make, Google Sheet et App Script, créé une solution permettant l’import d’images automatiquement dans le PIM.
Plusieurs étapes ont été nécessaires :
- Création d’un serveur SFTP pour la dépose des photos
- Listing et génération d’un fichier d’import pour le PIM
- Transfert des images et du fichier d’import sur le serveur Akeneo
- Import dans Akeneo
Création d’un serveur SFTP
Notre client récupère plusieurs formats de ses images pour différentes finalités. Certains de ces formats sont très lourds et n’ont pas d’intérêt à être chargés sur le PIM. Nous avons donc mis en place un serveur SFTP pour que les prestataires externes puissent y déposer les images.
Création du fichier d’import pour le PIM
A l’aide de Make nous créons un scénario pour lister toutes les images importées sur le serveur SFTP chaque jour et créer un fichier au format .csv avec une seule colonne reprenant tous les noms de fichier.
Dans un Google Sheet nous allons créer une première feuille avec en colonne A le nom des images à importer. Pour alimenter cette colonne, nous allons utiliser un script App Script pour importer tous les jours le fichier .csv généré.
En colonne B, nous allons utiliser une formule pour extraire du nom de l’image le SKU du produit. Un produit pouvait avoir plusieurs images, il nous faut maintenant formater le fichier afin de le rendre conforme aux exigences du PIM Akeneo. Aller voir notre article pour en savoir plus sur l’import des images dans le PIM Akeneo.
Un produit pouvant avoir plusieurs images, il faut donc passer d’un tableau à 2 colonnes (Nom de l’image et SKU) à un tableau à 5 colonnes dans ce cas, car nous pouvons avoir jusqu’à 4 images à importer.
Nous allons donc créer un deuxième onglet dans notre Google Sheet :
- Colonne A : SKU, pour récupérer tous les SKU, nous allons utiliser la formule =UNIQUE() cela permet de récupérer une seule fois le SKU même s’il est répété 4 fois.
- Colonne B, C, D, E: image1, image2, image3, image4. Pour récupérer les images, nous allons utiliser faire une rechercheV multivaleur, lisez notre article sur la RechercheV multivaleur.
Transfert des images et du fichier d’import sur le serveur du PIM Akeneo
Dans Make, nous allons créer un scénario de transfert des images du serveur créé pour recevoir les images, vers le dossier sur le serveur du PIM, qui a été renseigné dans le profil d’import.
Nous allons créer un deuxième scénario avec Make pour récupérer les données dans le Google Sheet et les envoyer en .csv dans le même dossier que les images.
Pour en savoir plus sur l’import d’images dans le PIM akeneo.
Import dans Akeneo
Lancer une tâche cron qui se déclenche après le dernier scénario Make pour lancer l’import des images automatiquement.