Joomladay francophone 2018 à Paris 18 et 19 mai

VirtueMart et pack de produits ?

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • VirtueMart et pack de produits ?

    Bonjour à tous,
    voilà je suis webdesigner et je dois réaliser un site internet pour un imprimeur indépendant. Je voudrais le faire sous joomla (que je pratique depuis 1 an) mais j'ai quelques questions par rapport à l'aspect e-commerce (et notamment du module VirtueMart que je ne connais pas vraiment)

    1/ L'imprimeur veux pouvoir vendre des "packs entreprise-identité", c'est à dire qu' un client pourrait commander par le site un "pack identité" qui comprend carte de visite+ logo + papier entête par exemple. Est ce que c'est possible de gérer une telle offre avec VirtueMart ou faut il un autre module ?

    2/ Bien sûr il faudrait que le client puisse payer par Paypal. Est ce fiable avec VirtueMart ? Est ce facile à paramétrer ?

    3/ VirtueMart est il le meilleur module Ecommerce pour Joomla ou est ce que quelqu'un à tester des solutions payantes (des liens?)

    Merci d'avance pour vos réponses

  • #2
    Salut,

    1) pas de problème pour vendre ça
    2) pas de problème pour Paypal, et tous les paramétrages sont indiqués dans le forum (même pour créer un faux compte développeur pour faire les test (sandbox))
    3) le meilleur, j'en sais rien, mais au moins il y a un forum super actif et réactif en cas de problème, tandis que pour les autres solutions... j'en sais rien !

    Commentaire


    • #3
      pack

      Bonjour,

      Je cherche aussi comment gérer des packs/lots de produits avec virtuemart.
      Pitch tu réponds que c'est possible, mais pourrais-tu steuplait me renseigner un peu sur la marche à suivre ?

      J'ai juste trouvé où lier des produits à des complémentaires, mais aucun menu ou on peut créer un pack (avec un prix promo), et y ajouter des produits dedans.

      L'idée est de pouvoir vendre des produits seul ou en pack, et que le stock soit mis à jour pour chaque vente, ainsi que d'avoir une page spécifique d'affichage pour le magasin dans le cas d'un pack de produits.


      Si tu as des infos (ou quelqu'un d'autre ) la dessus, je suis demandeur!

      Merci,

      Ben

      Commentaire


      • #4
        La solution que je verrais serait de faire à la fois des produits individuels, mais aussi des produits en pack.
        Je m'explique... Disons que tu as le produit A, B et C. Et que tu fais aussi un pack avec les trois produits.

        Alors dans Virtuemart, tu créeras 4 produits (et non 3) :

        1 - A
        2 - B
        3 - C
        4 - ABC

        Suis-je clair ?

        Commentaire


        • #5
          Oui très clair, mais quand on achète un produit ABC, il faudrait que ca décrémente les 3 stocks, et dans une page d'affichage de pack il me faut des liens vers les produits de niveau en dessous.

          En gros, ce serait plus du bricolage qu'une solution... et ça me convient pas
          Alors j'vais certainement attaquer bientot le développement de cette fonctionnalité, ça resservira probablement à d'autres gens.

          Merci toutefois pour ta réponse, et a+

          Ben

          Commentaire


          • #6
            Je met ce post à jour car j'ai fini cette fonctionnalité, si des usagers en ont besoin, me mettre un mp.

            Commentaire


            • #7
              @BENN : bravo pour avoir trouvé, si si, car je cherche encore.
              et comme BENN ne semble pas lire ses mp (et donc y répondre), si quelqu'un pouvait expliquer la manipulation, ce qui est bien mieux que d'attendre une hypothétique réponse en mp.

              Commentaire


              • #8
                Je relance le sujet un peu, la fonctionnalité m'intéresse également.

                Ça compenserait un peu l'absence de bon de réduction "à partir de xx € d'achats" par exemple.

                Dommage que la dev team virtuemart ne pousse pas à fond la complémentarité des produits.
                Veni vidi etc...
                (Pas de support par mp - j'en reviens pas qu'il faille le rajouter- le forum est là pour ça)

                Commentaire


                • #9
                  A priori j'ai loupé un MP effectivement, j'en suis désolé. Comme j'ai encore des demandes par rapport à ce script, je vous poste mon travail.

                  Si vous etes interesse mais que vous ne maitrisez pas PHP, passez moi un MP, je pourrais vous deviser une intégration dans votre magasin.

                  ===
                  DISCLAMER : Ce script a été développé spécifiquement pour une boutique, ce n'est pas un plugin qui s'installe en 3 clics, il nécessite une intégration spécifique dont les étapes sont décrites dans le fichier install du zip, et dans ce post. Aucune garantie quant à son fonctionnement n'est offerte. Jeferais mon possible pour prendre le temps de faire du support si besoin.
                  Plusieurs utilisateur m'ont dit qu'ils allaient compiler le tout et le mettre sur sourceforge, si quelqu'un a fait ce travail entretemps, ce serait cool de le poster ici.
                  ===

                  On m'a fait une demande similaire la semaine dernière, voici le message. Comme dit dedans, je manque de temps pour le support, alors j'éspère que tu est à l'aise avec PHP.
                  Par contre, je ne suis pas certain que ca prend en charge la gestion des stocks étant donné que c'est une contrainte qui a été retiré du cahier des charges de mon client. Mais ce n'est pas le plus dur à implémenter je pense.

                  J'ai effectivement développé cette solution pour un de mes shops pour un client.
                  Tu peux voir une démo ici avec les packs de produits.
                  http://www.embryolisseonline.com

                  Plusieurs problèmes se présentent quant au transfert du code source :
                  - l'absence de méthode, le code a été directement inséré dans différentes pages de virtuemart
                  - le nombres de modifs annexes, ce shop a été complétement revu dans son fonctionnement par rapport à VM de base


                  Je vais donc essayer de te présenter un petit résumer, et de te joindre les fichiers principaux concernant ces modifs, par contre je n'aurais pas le temps de faire du support ensuite.
                  Il ne s'agit pas d'un composant ou d'un plugin qu'on install en quelques clics, j'éspère que tu es à l'aise avec le php car il faudra mettre le nez dedans


                  Coté structure et admin :
                  - Dans la BDD, dans la table jos_vm_product, j'ai ajouté une entrée "kit" qui reprends les id et quantité des sous produits.
                  25,1;21,1;18,1;23,1 par exemple pour un kit 4*1 produit.

                  - coté admin
                  Il faut modifier le fichier de classe ps_product, j'ai crée des méthodes : loadKitExtension pour le formulaire produit, formatKitX() pour l'insertion dans la BDD, et différentes fonctions afférentes à l'affichage is_kit / is_in_kit / get_products_id_from_kit / get_products_from_kit
                  Il faut aussi modifier les fonctions d'ajout/modif pour que le kit soit enregistré dans la BDD.

                  L'autre fichier est le forulaire produit, (html/product.product_form.php), et charger l'extension de Kit


                  - côté public
                  La je te joindrai mes fichiers et te souhaiterai bonne chance car j'ai fait tellement de modifs dans ces pages que c'est quasiment impossible de les retrouver 2 mois après.
                  De plus, les kits ne sont pas affichés comme product_details dans une flypage indépendante, mais directement dans le shop.browse, séparé par des onglets.
                  edit: oops cette chance je viens de retrouver la flypage-kit que j'avais fait avant d'instaurer les onglets, je te joint le fichier, ainsi que shop.product_details.php ( cherche /* embryolisse childs */ )

                  Voilà, les fichiers à télécharger ici : http://www.inis.fr/pack_kit_vm_11.zip
                  administrateur/components/com_virtuemart/classes/ps_product.php
                  administrateur/components/com_virtuemart/html/product.product_form.php
                  administrateur/components/com_virtuemart/html/shop.product_details.php
                  components/com_virtuemart/themes/default/templates/product_details/flypage-kit.tpl.php
                  components/com_virtuemart/themes/default/templates/browse/browse_pack.tpl.php


                  Encore un fichier a editer que j'avais oublie de joindre au pack :
                  Il s'agit de la fonction qui insère le code javascript nécessaire pour générer les formulaires d'ajout de kit, il faut l'intégrer comme méthode de ps_html (admin/class/ps_html)

                  _________
                  Code:
                  function get_js_products($array_name ) {
                  
                  $db =& new ps_DB;
                  
                  $q = "SELECT #__{vm}_product.product_id,category_name,product_n ame
                  FROM #__{vm}_product,#__{vm}_product_category_xref,#__{ vm}_category ";
                  $q .= "WHERE #__{vm}_product.product_id <> '$product_id'
                  AND #__{vm}_product.product_id=#__{vm}_product_categor y_xref.product_id
                  AND #__{vm}_product_category_xref.category_id=#__{vm}_ category.category_id";;
                  $q .= ' ORDER BY category_name,#__{vm}_category.category_id,product _name';
                  // This is necessary, because so much products are difficult to handle!
                  $q .= ' LIMIT 0, 2000';
                  
                  $db->query( $q );
                  $products = Array();
                  while( $db->next_record() ) {
                  $products[$db->f("product_id")] = $db->f("category_name")." =&gt; ".$db->f("product_name");
                  }
                  echo "
                  function newKitChild()
                  {
                  var d = document;
                  
                  // get field labels
                  var lbl_kitchild_new = d.adminForm.js_lbl_kitchild_new.value;
                  var lbl_kitchild_del = d.adminForm.js_lbl_kitchild_delete.value;
                  var lbl_kitchild_quantity = d.adminForm.js_lbl_kitchild_quantity.value;
                  var lbl_kitchild_title = d.adminForm.js_lbl_kitchild_title.value;
                  
                  
                  var container = document.getElementById('kitchild_container');
                  var next_inc = container.getElementsByTagName('table').length + 1;
                  var toolbar = \"<a href='javascript:newKitChild();'>\"+lbl_kitchild_n ew+\"</a> | <a href='javascript:deleteKitChild(\"+next_inc+\")'>\ "+lbl_kitchild_del+\"</a>\";
                  
                  var table = d.createElement('table');
                  table.id = 'kitchildX_table_'+next_inc;
                  table.className = 'adminform';
                  
                  var tbody = d.createElement(\"tbody\");
                  var tr = d.createElement('tr');
                  var tr2 = d.createElement('tr');
                  tr2.id = \"kitchildX_tr_\"+next_inc+\"_0\";
                  
                  
                  var td_01 = d.createElement('td');
                  td_01.style.width = '5%';
                  td_01.innerHTML = lbl_kitchild_title;
                  
                  var td_02 = d.createElement('td');
                  td_02.colSpan = '2';
                  td_02.align = 'left';
                  td_02.innerHTML = '<select class=\"inputbox\" name=\"kitchildX['+next_inc+'][name]\" size=\"1\">";
                  foreach($products as $product_id => $product) {
                  echo "<option value=\"".$product_id."\">" . addslashes($product) . "</option>";
                  }
                  echo "</select>';
                  
                  
                  var td_03 = d.createElement('td');
                  td_03.colSpan = '3';
                  td_03.align = 'left';
                  td_03.innerHTML = toolbar;
                  
                  var td_04 = d.createElement('td');
                  td_04.style.width = '5%';
                  td_04.innerHTML = '&nbsp;';
                  
                  var td_05 = d.createElement('td');
                  td_05.style.width = '10%';
                  td_05.align = 'left';
                  td_05.innerHTML = lbl_kitchild_quantity;
                  
                  var td_06 = d.createElement('td');
                  td_06.style.width = '20%';
                  td_06.align = 'left';
                  td_06.innerHTML = \"<input type='text' name='kitchildX[\"+next_inc+\"][quantity]' value='' size='40'/>\";
                  
                  table.appendChild(tbody);
                  tbody.appendChild(tr);
                  tr.appendChild(td_01);
                  tr.appendChild(td_02);
                  tr.appendChild(td_03);
                  tbody.appendChild(tr2);
                  tr2.appendChild(td_04);
                  tr2.appendChild(td_05);
                  tr2.appendChild(td_06);
                  
                  container.appendChild(table);
                  
                  }";
                  
                  }
                  Je pense que j'ai tout mis, je manque beaucoup de temps en ce moment, donc je pourrais pas vraiment t'assister dans ce projet, mais tu peux toujours me repasser des mails si vraiment tu n'arrive pas ou qu'il manque des fichiers (je n'ai pas forcement pensé à tout ca fait qq mois que 'jai dev ca), j'essayerais de te répondre.

                  Bonne chance,

                  Ben

                  Commentaire


                  • #10
                    Benn, avant de mettre les mains dans le cambouis, je voulais être sûre que ta méthode ne prend pas en compte la décrémentation automatique des stocks par produit ?....
                    En gros, si ça décrémente, je remonte mes manches mais si ça décrémente pas, je vais trouver une autre solution bidouillée....

                    Merci !

                    Commentaire


                    • #11
                      Bonjour,

                      Je commence a intégré votre solution car j'ai aussi des packs a faire
                      dans le code la ligne
                      var toolbar = \"<a href='javascript:newKitChild();'>\"+lbl_kitchild_n ew+\"</a> | <a href='javascript:deleteKitChild(\"+next_inc+\")'>\ "+lbl_kitchild_del+\"</a>\";
                      il y a un espace de trop avant "+lbl_kitchild_del et un dans kitchild_n ew
                      voici la bonne ligne

                      Code PHP:
                      var toolbar = \"<a href='javascript:newKitChild();'>\"+lbl_kitchild_new+\"</a> | <a href='javascript:deleteKitChild(\"+next_inc+\")'>\"+lbl_kitchild_del+\"</a>\"; 
                      je suis en cours de teste pour voir si votre solution mache.
                      J'ai posté pas mal de solutoin sur le forum et je suis contant que je trouve une soluton a mon problême.(enfin normalement)

                      Merci pour votre partage

                      Je donnerais une solution plus simple,si possible, pour l'intégration si je réussit a finalisait chez moi.

                      P.S pour les admins , c'est un bug de transcription quand on le met en balise code et pas PHP
                      http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                      http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                      Commentaire


                      • #12
                        Bon apparemment , j'ai loupé un truc
                        J'ai réussit a intégrer et modifier tes fichiers(tu ne donnes pas ta version de VM utilisé)
                        Mais je ne trouve pas dans l'admin ton champs Kit dasn la page de modification des produits(j'ia bien rajouter kit dans la base de donné
                        pour info ce qui veulent l'ajouter avec phpmyadmin
                        Code PHP:
                        ALTER TABLE `jos_vm_productADD `kitVARCHAR255 NULL 
                        je sui bien aller dans configuration->Lister les modules de VM
                        danc modules: product j'ai ajouter 2 fonction
                        classe Méthode
                        KitInser ps_product formatKitX
                        KitProduit ps_product loadKitExtension

                        Mais il me semble qu'il faut donner le non exacte du module et la, je séche

                        Edit
                        Petite erreur de ma part
                        Donc cela marche mais ne gére pas grand chose
                        L'avantage c'est d'avoir une liste de toutre les produit sous le produit dans l'admin et de pouvoir selectionner le prduit et le nombre dans le kit
                        Par contre lors de la mise au panier, j'ai que le nom du kit pas ce qui le compose(normal?)
                        donc je vois pas trop comment l'utiliser et je vois pas la différence ? a part que les produits apparaissent dans le flypage du KIt produit .
                        Dernière édition par electrocity à 23/10/2009, 16h52
                        http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                        http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                        Commentaire


                        • #13
                          Mon souhait serais de pouvoir faire plusieurs kits à partir d'un produit principal.
                          Par exemple :
                          J'ai ceci en magazin
                          (mon article principal d'ou le kit est composé):
                          Arnould espace plaque 1p ice
                          Le mécanisme
                          Arnould espace prise de courant 2p+terre 16a auto cocoon
                          le support
                          Arnould espace support a vis 2m

                          J'arrive a le gérer par custom attribut extended mais lors de la mise ajour de prix je dois lui renvoyer tous , pour chaque produit de base.
                          L'idéel serait de pouvoir donné les ID ou les Ref de produit existant pour composé le kit.
                          Que les Produits dans le kit soit ajouter au panier(avc le titre du kit)
                          Que le stock soit géré(enfin la encore ça va)

                          Encore bravo pour le travail, mais bon c'est un peu limite pour utiliser en production cehz moi
                          Merci
                          Dernière édition par electrocity à 23/10/2009, 17h02
                          http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                          http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                          Commentaire

                          Annonce

                          Réduire
                          1 sur 2 < >

                          C'est [Réglé] et on n'en parle plus ?

                          A quoi ça sert ?
                          La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                          Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                          Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                          Comment ajouter la mention [Réglé] à votre discussion ?
                          1 - Aller sur votre discussion et éditer votre premier message :


                          2 - Cliquer sur la liste déroulante Préfixe.

                          3 - Choisir le préfixe [Réglé].


                          4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                          2 sur 2 < >

                          Assistance au forum - Outil de publication d'infos de votre site

                          Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                          Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                          Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                          UTILISER À VOS PROPRES RISQUES :
                          L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                          Problèmes connus :
                          FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                          Installation :

                          1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                          Archive zip : https://github.com/AFUJ/FPA/zipball/master

                          2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                          3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                          4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                          5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                          6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                          et remplacer www. votresite .com par votre nom de domaine


                          Exemples:
                          Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                          Télécharger le script fpa-fr.php dans: /public_html/
                          Pour executer le script: http://www..com/fpa-fr.php

                          Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                          Télécharger le script fpa-fr.php dans: /public_html/cms/
                          Pour executer le script: http://www..com/cms/fpa-fr.php

                          En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                          Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                          Voir plus
                          Voir moins
                          Travaille ...
                          X