Lorsque l'on a besoin d'une fonctionnalité qui n'a pas été prévue par les concepteurs de Joomla ! ou de VirtueMart, il faut savoir être créatif et modifier le code du CMS - ce que l'on appelle faire un « hack » dans le jargon.
Voici quelques modifications de VirtueMart concoctées spécialement à la demande d'un client pour un usage bien particulier ... mais qui peuvent être réutilisées dans un tout autre but.
A chacun d'imaginer la solution qui répond à sa problématique ...
Un filtre « afficher uniquement les produits bio »
Certains clients souhaitent afficher uniquement les produits qui les intéressent. On peut comprendre qu'un végétarien n'ait guère envie de parcourir des dizaines de pages et de lire la composition des produits pour savoir s'ils contiennent des ingrédients d'origine animale ...
Il lui suffit de cocher une case pour lister uniquement les produits végétariens ou produits qui correspondent à la condition posée : produits allégés, production locale ... les utilisations sont multiples.
Une borne de commande en self-service dans son magasin
Pas assez de vendeurs ? Manque d'espace pour exposer tous vos produits ? Installer une borne de commande en self-service dans son magasin peut être la solution. Si l'on souhaite vendre à la fois en ligne et en magasin, on utilisera une version modifiée du site marchand tout en conservera une gestion unique. Le système permet même de gérer plusieurs magasins physiques et en ligne tout en appliquant des grilles de prix et des conditions de vente différents selon les canaux et les points de vente.
Un sélecteur pour les comparateurs de prix basé sur la rentabilité produits
Les comparateurs de prix apportent un chiffre d'affaires appréciable, mais ce service a bien sûr un coût. Si l'opération est très rentable globalement, on constate vite qu'elle est déficitaire pour certains produits ou certaines catégories de produits.
Google Analytics permet d'analyser finement le comportement de chaque produit dans un comparateur particulier.
Beaucoup de clics mais proportionnellement peu de ventes ? Il serait dommage de retirer un produit de la vente, alors qu'il suffit de le masquer dans l'export du catalogue et de stopper ces clics improductifs et coûteux.
Avec un système de cases à cocher dans les fiches produit et dans l'arborescence des catégories, on pourra choisir précisément quels produits proposer à chaque comparateur.
Un système de réservation pour les livraisons locales
Le nombre de livraisons possibles dans une tranche horaire particulière est limité à la fois par la capacité du véhicule et par le temps dont dispose le livreur pour parcourir son circuit en fonction des conditions de circulation.
Les systèmes de réservation conçus pour l'hôtellerie, les installations sportives etc. ne sont pas aisément transposables à ce cas et posent des problèmes d'intégration au processus de commande.
Avec quelques adaptations, VirtueMart permet de gérer efficacement ces contraintes en modulant le nombre de commandes possibles pour un créneau horaire tout en montrant au client les autres disponibilités dans la journée et dans la semaine. Chaque créneau horaire est traité comme un produit, avec sa gestion de stocks : lorsque la capacité maximum est atteinte, le créneau est masqué. Et en cas d'annulation d'une commande, les disponibilités de livraison seront automatiquement mises à jour.
Une vérification du code postal permet de relier le client au circuit de distribution correspondant, éventuellement avec des conditions de livraison différenciées.
Et pour les distraits, on aura recours au ‘hack' suivant ...
Analyser le contenu du panier et autoriser ou bloquer le bouton commander
Il est parfois nécessaire d'interdire au client distrait d'effectuer une commande incomplète. Un produit inutilisable sans une autre référence, une promotion avec des achats liés, un emballage spécial et le créneau de livraison pour certains cas (lire ci-dessus).
Le script analyse le contenu du panier et autorise ou bloque le bouton « commander » tout en affichant un message bien visible. Les règles sont aisément modifiables car elles fonctionnent avec les identifiants de produits et des catégories :
si le panier contient un article de la catégorie 1 et un article de la catégorie 2, alors achat autorisé
si le panier contient un article de la catégorie 1 mais aucun article de la catégorie 2, alors achat refusé
si l'article qui a motivé l'autorisation est par la suite supprimé, le système bloquera l'achat de nouveau.
Micro-crédit, micro-projets, économie solidaire :
Dans une vente classique, l'acheteur échange une somme d'argent contre un bien ou un service. Dans les systèmes de micro-crédit comme Babyloan le « client » choisit un projet et verse une somme d'argent destinée à le financer. Un CMS comme Joomla ! permet de présenter les projets de manière attrayante et, avec quelques adaptations, le composant de e-commerce Virtuemart se chargera de gérer les transactions. On visualisera en temps réel le niveau de financement déjà obtenu pour chaque projet grâce à une jauge interactive.
Le système pourra également être utilisé pour récolter des dons destinés à financer un projet, un événement ...