Correctifs divers
Afin d'optimiser le fonctionnement de son connecteur et notamment de l'arrivée des produits variables, l'agence oaka a procédé à des correctifs sur les fonctionnalités de l'extension Woosteri. Déploiement ce jour de la version 1.5.1 qui succède à la version 1.5.0.
Woosteri

Woosteri 1.5.1
Faisons le point ensemble sur les évolutions apportées dans cette nouvelle version de l'extension Woosteri développée par l'agence oaka.
Ajout d'un paramètre de gestion du comportement des stocks
Un nouveau paramètre permet de gérer le comportement des stocks lorsque Websteri ne fournit pas aucune information. Il est maintenant possible de choisir si les produits doivent être considérés comme en stock ou en rupture de stock, offrant un meilleur contrôle sur l’affichage des disponibilités.

Des améliorations ont également été apportées à la gestion des stocks des produits ayant des variations. Chaque variation est indépendamment suivie et synchronisée du produit parent, ce qui réduit les erreurs de disponibilité et assure une meilleure mise à jour des stocks.
AJOUT D'UN PARAMÈTRE DE COMPORTEMENT DES parents conditionnés
Un nouveau paramètre a été ajouté dans la page d'options du connecteur WooSteri afin d’affiner la manière dont le catalogue de votre caisse Crisalid doit globalement être interprété dans WooCommerce.
En effet, nous avons constaté que certains utilisateurs considèrent les produits "parent" comme un produit factice qui contient des conditionnements de produits alors que d'autres on construit leur catalogue en prenant un des articles comme produit "parent".
Exemple : une "tarte au citron" contient des sous-articles "tarte au citron - 4 personnes" et "tarte au citron - 8 personnes". Le premier catalogue envoie 3 articles dont "tarte au citron" alors que le second catalogue considère "tarte au citron - 4 personnes" comme le produit "parent". "tarte au citron - 4 personnes" ne serait alors non commandable car un produit "parent" n'est qu'une coquille vide !

Ce réglage permet de définir si les références parent (sans @) doivent être considérées comme de vrais articles commandables ou comme des produits factices, et est donc essentiel pour garantir que la synchronisation reflète fidèlement l’organisation du catalogue Websteri.
Attention : en cas de modification de ce nouveau paramètre après une première synchronisation, des conflits sur les références (qui doivent restées uniques dans WooCommerce) peuvent avoir lieux. Il est recommandé de supprimer tous les produits afin d’éviter toute incohérence ou blocage.
Prise en compte de l’unité de poids définie dans WooCommerce
Une coquille qui ne nous a jamais été remontée jusque là... et que notre équipe de développement à identifier : le poids indiqué dans Websteri est converti automatiquement selon l’unité par défaut définie dans WooCommerce (kg, g, lbs, oz).
Par extension, l’affichage du commentaire spécial dans la commande WebSteri sur la gestion des quantités et du poids total de la ligne de commande a été ajusté pour refléter ces conversions d'unité.
Adaptation du calcul du montant d'une ligne dans une commande
Suite à l’évolution de l’API WebSteri, le calcul du prix d'une ligne de commande est désormais effectué en divisant le total par la quantité, ce qui permet d’obtenir le total unitaire TTC au lieu du total TTC de la ligne de commande. Jusqu'à peu de temps, c'était le total TTC qui était attendu par la caisse.
Correction du positionnement de la note générique
Le positionnement de la note générique dans les commentaires de commande a été déplacé.
En effet, cette nouvelle fonctionnalité intégrée dans la 1.5.0 apparaissait systématiquement en commentaire de chaque ligne de commande et non comme commentaire général de la commande.
Optimisation des déclenchements sur la page de synchronisation
Les déclenchements manuels (appels AJAX et traitements associés) sur la page de synchronisation ont été revues afin de corriger des erreurs 500 qui nous ont été remontées dans certaines situations.
Ces modifications rendent la synchronisation plus fluide et stable, réduisent la charge serveur inutile et s'assurent que chaque action de mise à jour des produits sont exécutée une seule fois.
D'autres pistes d'optimisations ont été identifiées pour la prochaine version du connecteur.
Optimisation de la synchronisation des produits conditionnés
Un blocage de la synchronisation nous a été remonté dans un cas spécifique : lorsque le nombre de produits conditionnés (avec un @) était supérieur au nombre de produits à traiter dans un lot de synchronisation de produits simples, le système ne traitait plus aucun produit.
La synchronisation des produits simples fonctionne maintenant correctement et les produits conditionnés sont ignorés dans ce cas de figure (car traiter à un autre moment).
Bug d'enregistrement sur le paramètre "Perte de synchronisation ?"
Une erreur de typo empêchait la sauvegarde du paramètre "Perte de synchronisation ?" qui restait donc bloqué dans une position. Cette correction permet maintenant de choisir la corbeille ou la mise en brouillon pour les produits qui ne sont plus synchronisés depuis plus de 72h .
Correction de warnings PHP non bloquants
Lors de nos investigations sur les points précédemment cités, nous avons identifiés des warnings PHP. Une partie des avertissements ont été corrigés pour garantir une exécution plus propre du code, en phase avec l'évolution des langages de programmation.