Gestion des imports DRUPAL

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour.

Je m'y connais peu en Drupal, mais j'ai à faire à ce qui me paraît une aberration en architecture. La boîte qui a développé me dit que c'est natif de Drupal. Si vous vous y connaissez bien, je veux bien un éclairage, car si c'est natif, c'était pas du tout le bon choix techno.

On a un site e-commerce géré par DRUPAL. C'est un site un peu hybride car sur chaque fiche produit, on héberge du contenu, et notamment des pièces jointes sous format PDF, de la vidéo à télécharger ou des audios. C'est lié à la spécificité du produit, et ça a toujours été présenté comme ça à la boîte à laquelle on a fait appel.

Bref. Quel est le problème?

A chaque fois qu'une fiche est mise à jour dans notre ERP, elle est mise à jour dans le PIM, et DRUPAL la réimporte. Mais il réimporte également toutes les pièces jointes, y compris si la modification ne porte que sur un champ sans aucun rapport. Et c'est là que j'ignore pourquoi, plutôt que de réécraser l'existant, il duplique.

Et il y a pire.

Le bloc fichier attaché est un bloc unique rattaché à x fiche produit. Donc si il y a 4 produits, il va dupliquer 4 fois la pièce jointe sur le serveur. Et il fait ça à chaque fois qu'un produit est modifié. En back on a mis un système justement pour éviter d'avoir à chaque fois à rattacher à un produit une liste de fichiers attaché, et en front, il fait l'inverse et reduplique les fichiers.

Je vous raconte donc pas les problèmes de stockage en sachant que les fichiers attachés peuvent faire + de 700 mega dans le cas de vidéos par exemple. Là on a déjà racheté de l'espace de stockage mais dans 2 mois on se retrouve dans la même situation.

Bref, maintenant on nous demande 20 KE pour optimiser "la logique DRUPAL" ?

Alors, si quelqu'un peu me dire de quoi il en retourne exactement, car j'ai un peu de mal à comprendre qu'un CMS comme DRUPAL soit aussi mal fichu.

Merci,
M.

Par curiosité, je cherchais des infos sur les PIM ce matin, et je tombe sur ce mail, je n'ai pu résister à répondre... Même si c'etait il y a plus de 2 mois...

Rien de ce qui est décrit au dessus n'est une spécificité, ni une logique particuliere de drupal. La gestion de contenus est uniquement une affaire de developpement en amont.
Prenons par exemple un module public trés connu : feeds, il gere les imports en differents formats et fait le café en evitant de dupliquer, et d'écraser les anciennes versions si il n'y a pas besoin. Il est relativement difficile de rajouter l'import de fichiers depuis un serveur avec ce module, mais c'est possible.
La plupart des sites de vente dont je m'occupe ont un systeme de mise à jour par fichier excel ou xml lorsqu'ils n'ont pas de PIM, et soit je me sert de ce module, soit je crée moi-même mon module de mise à jour, selon les moyens techniques du client, et je n'ai jamais eu de probleme de duplication, car il n'y a rien dans la logique drupal qui oblige à faire ça.
...
Mais là, si vous avez suivi, j'ai parlé de site SANS PIM.
...
Et c'est là que je me pose plusieurs questions pour avoir aussi déjà géré des sites drupal couplés à un PIM :
- Pourquoi ne pas laisser les fichiers sur le PIM, dans un dossier public, les reste étant securisé ? Vous dupliquez déjà une premiere fois le contenu vers drupal, avec cette façon de faire...
- A quoi sert votre PIM? Un PIM est une plateforme pour gérer et générer des contenus à la volée. Logiquement, drupal se connecte au PIM via un service accessible uniquement à votre serveur, demande la liste des produits qu'il souhaite au PIM, le PIM lui envoie les infos en brut, dans le format convenu, et drupal mets tout ça en forme, avec un joli affichage... Envoyer betement la structure des fiches sur drupal pour que ce soit drupal qui gere cela, c'est juste ne pas se servir du PIM...

Bonne journée quand même...