[thème] eshopper

Un gros morceau pour une clientèle particulière, les sites de commerce en ligne. Le thème eShopper est un site complet qui comprend tout le nécessaire pour couvrir une boutique en ligne de bout en bout.

Basé sur le thème concept DefoShop qui utilise l'utilitaire jCart pour opérer la magie commerciale, le thème donne un look professionnel digne des plus grands sites connus. Même si sa complexité évidente lui permet beaucoup de flexibilité, un installateur qui veut bien se prêter au jeu pourra rapidement mettre en ligne une boutique avec un éventail raisonnable de produits, classés et filtrés dans des catégories et des marques (qui ne sont ni plus ni moins qu'une autre catégorie). Les articles deviennent des produits, leur prix est installé tout bonnement dans le champ de chapô. Une partie blogue plus traditionnelle permet de créer également dea articles conventionnels et les faire défiler dans des pages de catégories et d'articles classiques. La distinction entre les articles qui sont des produits à vendre et des articles de nouvelles s'opère simplement par l'assignation à une catégorie "mère" qui fait l'aiguillage et évite les mélanges. Quelques variables installées en haut du fichier header.php recevra ses numéros de catégories magiques une fois les catégories (et quelques produits) en place.

Un ajout important a été fait pour permettre d'insérer une sélection d'options (facultative) à un produit lors de son ajout dans le panier d'achat. Si un produit est offert sous plusieurs versions, elles sont installées dans le contenu du produit sous forme de shortcode. J'ai pensé offrir 3 grandes familles de détails: des photos additionnelles du produit, une liste déroulante d'options et des items de description qui sont trop longs à identifier ici, l'exemple suivant donnera une idée:

[shop]
[photoextra]
data/medias/photos/virtualschool.jpg|
data/medias/photos/autounion.jpg
[/photoextra]
[selection]
plus un|+1||
moins deux|-2||
25% de rabais|*0.75|
[/selection]
[sommaire]
Disponibilité|En stock||
Condition|Neuf||
Marque|LaMeilleure
[/sommaire]
[/shop]


Le produit a donc deux images supplémentaires qui apparaissent dans un carrousel de la page de détail, une liste déroulante avec 3 options disponibles (libellé suivi du calcul mathématique qui influencera le prix) et un sommaire de description plus statique qui affiche dans l'exemple la disponibilité, la condition et la marque.

Je ne laisserai pas tomber les braves individus qui se lanceront dans l'installation du thème sur une boutique en ligne mais vous comprendrez que le support ne sera pas théorique et devra reposer sur un site en ligne, fonctionnel et prévu pour la production. J'ai pu tester les fonctionnalités de base et les ajouts mais la possibilité que quelques bogues surgissent est bien présente. Le système demande d'ouvrir un compte chez Paypal mais une page de confirmation est produite avant que toute transaction soit complétée, à vous de bien tester les variantes créées par les options qui influencent les prix unitaires. Bien entendu, les besoins particuliers pourront être adressés, démontrant une fois de plus la grande flexibilité de PluXml pour répondre aux besoins les plus pointus.

Jetez un coup d'oeil à la démo si vous prévoyez vous lancer dans le commerce. Les images de vos produits pourront tirer le plein avantage de la plateforme en utilisant une boîte de type "softbox". Les possibilités sont infinies, à qui la chance!
«1

Réponses

  • Un autre point éditorial sur le thème. Un système de score de type "5 étoiles" était présent dans le gabarit mais rien dans PluXml ne permet de stocker et d'interpréter la donnée en question à moins d'ajouter un plugin ou de modifier les champs en place. J'ai pris la décision d'utiliser le nombre de commentaires pour créer la logique d'affichage des étoiles (et demi-étoiles) pour offrir une échelle sur 10 de la "popularité" d'un produit en se basant sur le nombre de commentaires. Vous comprenez bien qu'on ne parle plus d'une échelle d'appréciation, les commentaires pouvant être autant positifs que négatifs.

    La méthode un peu boiteuse ne fera pas l'affaire de tous, soyez bien libres de retirer le tout si cette méthode ne fait aucun sens à vos yeux. De mon côté, je ne voulais pas retirer les étoiles de l'affichage, c'était pas façon d'en tirer parti.
  • GzygGzyg Member
    Salut Pierre,

    D'abord et avant tout, sache que je suis vraiment admiratif devant ton abnégation à créer autant de thèmes originaux pour PluXml. :)

    Cela dit, concernant l'e-commerce, un site de ce genre ne peut pas proposer qu'une mise en place graphique des produits à vendre, aussi pointue soit-elle (et je te fais confiance là-dessus). Il y a tout l'aspect relation client (quasi ERP) qui doit exister en back-end, même à minima. C'est ce qu'offrent les fameux plugs-in d'e-commerce pour WordPress : une gestion côté admin des clients, des produits, des livraisons, etc, avec parfois une option "pro" pour le support.

    PluXml ne me semble pas vraiment armé pour gérer de grosses boutiques (je ne crois pas qu'il ait été conçu pour ça, d'ailleurs).

    Alors, OK : PluXml peut faire le job pour vendre quelques produits numériques à télécharger (photos, livres, thèmes, ...) à une clientèle assez faible en nombre. Il est d'ailleurs possible que j'y bascule ma librairie (actuellement sous WordPress).

    Du coup, et notamment parce que tu prévois déjà qu'il y aura beaucoup de travail annexe sur ce thème de la part du téméraire qui le choisirait :

    1. ne serait-il pas plus "bénéfique" de se concentrer sur des thèmes blogs + vitrines (là où PluXml excelle) ?
    2. ne serait-il pas plus "intéressant" de lancer un vaste projet d'e-PluXml pour doter celui-ci du backend nécessaire à une boutique ?

    Évidemment sans moi parce que je ne suis pas développeur et qu'il est plus facile de causer que de faire... O:) ]:D

    Sinon, je me répète, encore bravo (et merci) pour toutes tes contributions. :)


    à plus,

    Gzyg
  • @ Gzyg

    + 1000
  • Bonjour,
    Je suis allé vite l'essayer (en off line) voilà ce que j'ai eu comme message d'erreurs:


    Notice: Undefined variable: jcart in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 225

    Notice: Trying to get property of non-object in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 225


    Notice: Undefined variable: jcart in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 321

    Fatal error: Call to a member function get_contents() on a non-object in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 321
  • PierrePierre Member
    août 2016 modifié
    Je comprend les inquiétudes mais le thème est probablement plus simple à utiliser qu'il en donne l'impression.

    Premièrement, ma motivation pour convertir les thèmes vient de mon admiration pour la flexibilité de PluXml (par sa conception ingénieuse qui s'améliore sans arrêt) et le talent des designers qui nous offrent gracieusement des petits bijoux de beauté. Je ne répèterai jamais assez que ma modeste contribution est de marier ces deux éclairs de génie pour en montrer le résultat. Ainsi, quand des visiteurs curieux tombent sur PluXml par hasard et jettent un coup d'oeil aux thèmes disponibles, ils trouvent des produits tout à fait comparables aux grands joueurs sur le marché.

    Je connais très bien le milieu du commerce électronique pour avoir travaillé pour un leader de cette industrie, le processus complet de la relation client est absent pour la simple raison que PluXml a laissé de côté toute forme de "membership" pour le garder simple à gérer. Ceux qui veulent vénérer Wordpress parce qu'il offre plus de flexibilité, la porte est là, prenez-là. De mon côté, dans mon effort de promotion de notre CMS chéri, je continuerai à en repousser les limites.

    Le système de eshopper est complexe mais s'installe rapidement quand on s'y reconnaît. Le niveau de compréhension de PluXml et de DefoShop doit être au-dessus de la moyenne mais si un "vert" voulait se lancer et installer un site sérieux dans un projet véritable, on ne parlerait que de quelques conversations pour parfaire cette compréhension.

    Les erreurs identifiées par le message précédent sont de bons exemples d'impodérables situations qui sont du cas par cas, le besoin d'installer une ligne dans l'index de PluXml et d'ajuster le niveau de PHP du serveur.

    Les gens qui désireraient avoir des thèmes simples, je peux vous expliquer comment fonctionne le système de chargement et même comment copîer coller des pages de gabarits pour adapter un thème de votre choix. Ces thèmes-là ne feront pas avancer ma cause, ils ne sont que le thème par défaut avec du rouge à lèvres. Vous pouvez en produire autant que vous en voudrez. Vous les trouvez "bénéfiques", je les trouve endormants et rétrogrades. Nous vivons dans un monde libre, je n'ai pas à vous dire quoi faire ou ne pas faire, la rubrique Ressources accueillera à bras ouverts votre produit.

    Si vous avez identifié un thème dans une bilbiothèque et que vous épouvez des difficultés à le convertir, aucun problème à me demander de le faire. La quantité de travail demandé sera bien moins grande que les mois de nuits blanches que je viens de passer pour convertir celui-ci.
  • Quelques précisions pour le démarrage du bon pied.

    Les shortcodes mentionnés en exemple peuvent attendre un peu, les premiers articles peuvent être montés avec un titre, un chapo (contenant un nombre qui sera le prix) , une image d'accroche et un petit texte descriptif.

    Une catégorie sert de "filtre" pour identifier que les articles qui sont des produits sont traités à part. Cette catégorie est appelée $entreeBoutique, on met son numéro tout en haut du fichier header.php

    D'autres catégories servent ensuite à séparer des groupes de ces articles à vendre pour offrir une certaine structure. Dans la démo, on utilisait "Men" et "Women" par exemple. Celles-ci seront insérées dans $categoriesBoutique

    Pour aller un peu plus loin et respecter le gabarit de la démo, j'ai inclus aussi le concept de marques, qui n'est rien d'autre qu'un jeu de catégories tout à fait identique au sujet précédent. On met celles-ci dans $categoriesMarques

    Les pages de catégories pour tous ces produits utilisent le même gabarit, celui de categorie-shop.php . La sidebar contient alors la liste des catégories des produits sans être confondue avec celle des articles de blogues qui cohabitent mais sont hors de vue quand on fait ses emplettes. Un petit coup d'oeil en passant sur l'échelle de prix tout à fait foncitonnelle.

    Ainsi, l'installation du premier jour ressemble à n'importe quel thème. Un PluXml flambant neuf, le thème installé sans plugin, plxMySearch sera nécessaire un peu plus tard mais n'empêche pas le bon fonctionnement du thème pour préparer le départ. Quelques articles de produits avec de belles photos, le prix installé dans le champ Chapo. On met tout ça dans un catégorie bien identifiée dans header.php , ça fonctionne déjà en quelques minutes. Ensuite vient le travail d'étoffer les catégories, ajouter des détails pour les produits.

    J'ai testé avec une trentaine de produits, la vitesse est très équivalente à l'affichage d'un blogue conventionnel. Pour les petites boutiques en ligne, même avec des structures de prix complexes, les possibilités sont infinies.
  • Reste plus qu'à coupler le thème et le plugin... ]:D
  • Le seul plugin qui manque est plxMySearch qui s'installe très facilement.

    Tout le reste fonctionne sans nécessiter aucun plugin. Les articles de certaines catégories deviennent des produits, le prix est simplement inscrit dans le chapô au lieu d'un paragraphe de texte. Pour une boutique simple, même les shortcodes ne sont pas nécessaires.
  • Bonjour,

    Y a t il qlqn qui a essayé ce beau theme ? ça n'a pas marché pour moi en localhost !
  • Vous prévoyez vendre vos produits à partir d'un serveur installé chez vous?

    Si vous mettez une version publique de PluXml avec quelques-uns de vos produits, il sera très rapide de voir ce qui cloche et mettre votre commerce en ligne.
  • Merci pour la rapidité de votre réponse,

    Voilà les deux messages d'erreurs que j'ai eu

    Notice: Undefined variable: jcart in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 224

    Notice: Trying to get property of non-object in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 224




    Notice: Undefined variable: jcart in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 320

    Fatal error: Call to a member function get_contents() on a non-object in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 320




    Rien ne s'affiche, ni produits, ni sidebar

    je crois que le probleme est au header

    au menu aucun lien n'est accessible !
  • ppmtppmt Member
    Salut Pierre,

    J'ai installé le thème sur un site pluxml vierge. J'ai crée des catégories pour mes produits ainsi qu'une catégorie "produits". La template est categorie-shop.php

    J'ai ensuite crée un article auquel j'ai attribue 2 catégories (celle du produit et la catégorie "produits"). La template est article-shop.php

    Rien n'apparait sur le site.

    http..//highview.eg2.fr/

    Je peux donner un accès par message prive.
  • abdelkader a écrit:
    Merci pour la rapidité de votre réponse,

    Voilà les deux messages d'erreurs que j'ai eu

    Notice: Undefined variable: jcart in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 224

    Notice: Trying to get property of non-object in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 224




    Notice: Undefined variable: jcart in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 320

    Fatal error: Call to a member function get_contents() on a non-object in D:\Program Files\EasyPHP5.2.10\www\aaa\themes\theme-eshopper\header.php on line 320




    Rien ne s'affiche, ni produits, ni sidebar

    je crois que le probleme est au header

    au menu aucun lien n'est accessible !

    Il est où le site?
  • ppmt a écrit:
    Salut Pierre,
    Rien n'apparait sur le site.

    http..//highview.eg2.fr/

    Je peux donner un accès par message prive.

    Je regarde ça tout de suite. Avec si peu de choses qui s'affiche, il se peut que je demande de passer au thème par défaut temporairement. Pour l'instant, je vais voir si je peux en tirer quelque chose.
  • J'assume que la ligne spéciale expliquée dans defoShop est bien ajoutée dans le index.php de la racine.

    (sous les premiers include)
    include_once(PLX_ROOT.'/themes/eshopper/jcart/jcart.php');


    Aussi, installer le plugin plxMySearch (et aucune autre) est proablement une bonne idée pour éviter les conflits si le système le cherche en vain.

    On verra pour l'accès en privé mais ça ira peut-être sans en arriver là.
  • ppmtppmt Member
    Ok O:)
    Apres avoir ajoute le include_once ca marchait un peu mieux mais l'installation de plxMySearch a bien debloque.

    Le site affiche maintenant un peu plus de chose :)

    je continue a jouer alors!

    Merci pour l'aide et a la prochaine question
  • Je reste sur le cas, je pourrai guider un peu.
  • Des instructions sont données ci-haut. Il faut créer une catégorie "mère" pour la boutique, prendre en note son numéro et le reporter dans la variable matrice $entreeBoutique dans header.php.

    Ici, on a quelques autres catégories, c'est très bien, celles-ci vont dans la matrice $categoriesBoutique.

    Toutes ces catégories doivent recevoir le gabarit categorie-shop.php beaucoup de choses vont commencer très vite à prendre place à ce moment.

    J'ai l'impression que la nature du produit ne nécessitera pas de critères qui influencent le prix, du moins pour l'instant. On oubliera donc les shortcodes pour tout de suite. Mais si jamais des "tailles" de pain ou des "garnitures des fêtes" arrivent dans le paysage, on jouera avec ces jouets-là.
  • ppmtppmt Member
    bon. J'ai cree la categorie "mère" (le nom est important?). Son id est 005 donc dans header.php j'ai mis ca:
    [== PHP ==]
    $entreeBoutique = array(5);				// c'est une matrice mais doit être unique
    

    apres mes 3 categories ont pour id 003,004,005 :
    [== PHP ==]
    $categoriesBoutique = array(2,3,4);			// catégories de produits triés dans la boutique, leurs articles ont une structure spéciale (par exemple le prix dans le chapô)
    

    toutes les categories (incluant mère) on comme template categorie-shop.php.

    J'ajoute la categorie mere a tous les produits. La seule chose qui manque maintenant c'est l'affichage des articles. Je dois faire quelque chose de mal car je ne pense pas que "mere" doivent apparaitre sur le site.
  • ppmtppmt Member
    ah du mieux. En fait c'est quand je clique sur une des categories du sidebar que les produits disparaissent. Sur la page d’accueil ca s'affiche
  • On y est presque. Ça commence à avoir pas mal de gueule. Non, les noms sont complètement sous ton contrôle, le système classe par les numéros, c'est plus compatible à PluXml comme ça.

    Dans un même ordre d'idée, les articles qui sont des produits reçoivent le gabarit article-shop.php pour lancer la page de détail de produit. La photo d'accroche se retrouvera dans le carrousel comme image unique. Le premier shortcode à essayer sera celui des images supplémentaires, il se maîtrise assez bien. Ça pemet de montrer la croûte en gros plan et la mie bien dodue (j'ai tellement faim).

    Côté catégories croisées, le monde de la boulangerie sort un peu des méthodes traditionnelles, mais imaginons qu'un groupe "sans gluten" existait, cette catégorie serait sous la forme d'une "marque" pour utiliser la deuxième section des catégories. C'est pas comme si tes produits avaient des "marques", tu penseras peut-être à quelque chose.
  • ppmtppmt Member
    Pour ce qui est des marques en effet dans la boulangerie c'est pas commun par contre on peut utiliser les differentes farines utilise comme marque.
  • ppmtppmt Member
    Petite question bete mais ca se met ou le shortcode ?

    J'ai mis ca dans le contenu de l'article
    [== Indéfini ==]
    [shop] 
    [photoextra] data/medias/large_white_loaf.tb.jpg 
    [/photoextra] 
    [/shop]
    

    tout ce que ca change c'est que ca apparait dans le contenu comme du texte
  • Le shortcode semble bien écrit mais ce n'est pas lui qui va faire de l'article un produit. Les articles restent des articles de blogue si on ne leur assigne pas le gabarit article-shop.php.

    Les noms de produits et de catégories portent à confusion, on ne sait plus qui est quoi. Un nom de produit est comme un nom d'article de PluXml, il est unique et précis, une catégorie est un regroupement. Ici, on voit les mêmes noms partout qui s'entrecroisent.

    Je suggère d'ajouter quelques produits aussi pour remplir les cases des écrans. La liste un peu courte pourrait devenir un facteur, il faut meubler les écrans de catégorie et dynamiser un peu les pages d'articles. Le système est prévu pour une liste d'items un peu plus grande, disons au moins une vingtaine (ou deux).

    Une catégorie-mère est une expression pour montrer son rang qui englobe toute la boutique, aucune catégorie ne s'appelle "mère".
  • ppmtppmt Member
    août 2016 modifié
    je vais creer plusieurs autres articles alors.

    Je ne comprends pas trop le concept de categorie-mere. Quand je cree un article (qui est un produit) je dois seulement lui attribuer le nom de la categorie ou je veux le classer (par exemple Pastry)? ou bien je dois en plus lui attribuer une categorie-mere?

    Du coup je ne comprend pas ce que je dois mettre dans le header.php pour la variable $entreeBoutique ?

    Sinon j'ai bien mis le gabarit article-shop.php pour tous les articles
  • Bonjour Pierre

    J'ai pas encore mis le site en ligne, je teste le thème en local avec esay PHP 5.2.10

    J'ai eu presque le même problème que celui de la boulangerie seulement j'ai rien compris à vos solutions
  • abdelkader a écrit:
    Bonjour Pierre

    J'ai pas encore mis le site en ligne, je teste le thème en local avec esay PHP 5.2.10

    J'ai eu presque le même problème que celui de la boulangerie seulement j'ai rien compris à vos solutions


    Rien ne va avancer si je ne peux pas voir le site en ligne. Il devra y arriver un jour de toutes façons.
  • ppmt a écrit:

    Je ne comprends pas trop le concept de categorie-mere. Quand je cree un article (qui est un produit) je dois seulement lui attribuer le nom de la categorie ou je veux le classer (par exemple Pastry)? ou bien je dois en plus lui attribuer une categorie-mere?

    Du coup je ne comprend pas ce que je dois mettre dans le header.php pour la variable $entreeBoutique ?


    La catégorie-mère est un genre de parapluie qui regroupe tout ce qui est un produit. C'est un peu comme si on avait la possibilité de faire des sous-catégories, ce qui n'est pas le cas, on doit tricher un peu. On peut avoir 5 catégories de produits et 25 produits qui y sont distribués. Et tu as bien compris, les articles en questions reçoivent tous une (ou plusieurs) catégories mais, également, ils ont tous la catégorie globale qui déclare qu'ils sont un produit. Quand on veut un liste de tous les produits, on n'utilise que cette grande catégorie pour les appeler.

    La variable $entreeBoutique est donc le numéro de cette grande catégorie globale, elle n'est pas une catégorie comme boulangerie ou pâtisserie, celles-là en sont des "vraies". Ma grande catégorie s'appelait "Boutique" mais la tienne peut porter le nom de ton choix, on ne le verra pas dans la liste des catégories dans la sidebar. À cet endroit, on ne voit que les véritables catégories comme boulangerie et pâtisserie. En résumé, tous les articles ont au moins deux catégories, la mère, la vraie et même parfois la "home" pour arriver dans le carrousel de la une.
  • ppmtppmt Member
    Ok donc je me cree quand meme une categorie que j'appele disons boulangerie (categorie id 5 que je mets dans $entreeBoutique).

    Je laisse le gabarit a categorie.php.

    Ensuite mes produits auront leur categorie plus cette categorie boulangerie.

    Le site est comme ca actuellement et comme tu peux voir dans la sidebar dans le menu Categories on voit bien mes 2 categories (Yeasted Bread et Sourdough) mais aussi cette categorie-mere Boulangerie.

    Est-ce normal?

    Desole pour toute ces question qui doivent te paraitre un peu stupide.
  • Non, la catégorie Boulangerie est probablement une véritable catégorie qui la sépare de la Pâtisserie, par exemple.

    Non, le gabarit categorie.php est pour le blogue, pas pour la boutique, toutes les pages qui ont des produits dessus ont un gabarit categorie-shop ou article-shop

    Oui, tous les produits reçoivent la grande catégorie de boutique et au moins une autre. Pour utiliser le concept de "marques", ma suggestion est d'en coller une troisième. Tu suggérais la sorte de farine par exemple. Ça semble un bon choix parce que j'imagine que tous tes produits en utilise une sorte.

    La catégorie mère est dans $entreeBoutique mais n'est pas répétée dans la liste $categoriesBoutique. Ces dernières sont nos fameuses sous-catégories "enfants", la mère ne peut pas être sa propre mère. C'est pour ça que tu la vois apparaître par erreur dans la liste des catégories.
Connectez-vous ou Inscrivez-vous pour répondre.