SPIP - Contrib

[ar] [en] [es] [fr] [it]



Accueil du site > Contribs dédiées > Commerce > Thélia pour SPIP

vente en ligne, ecommerce

Plugin Thélia

Pour utiliser les boucles Thélia dans vos squelettes

mardi 26 juin 2007, par alain cousin, Arnault Pachot, Claude. Dernier ajout jeudi 3 juillet 2008

Toutes les versions de cet article :


Une approche basée sur l’utilisation conjointe des deux logiciels SPIP et Thélia pour la réalisation de sites de publication et de vente en ligne

Voir en ligne : Site de test


Démonstration

Voici quelques sites qui utilisent le plugin Thélia pour SPIP :

- Festival Framboiziks
- Isbl-consultants
- Via Perlata
- Piscine facile
- Pays Catalan
- Menu-Fretin
- Belladiet
- CEMEA Haute Normandie
- Festival des Heures Musicales
- L’Antenne 110
- ...

Description

Thélia est un logiciel libre de vente en ligne basé sur un système boucle/balise très proche de celui de SPIP.

Ce plugin permet d’activer le moteur de Thélia après celui de SPIP lors du calcul des pages, ce qui va vous permettre d’utiliser directement les boucles au format Thélia dans vos squelettes :
- vous gérez votre site SPIP et le catalogue Thélia depuis l’espace privé SPIP

Le plugin est livré avec tous les squelettes spécifiques pour la vente en ligne : panier.html commande.html .... basés sur la dist, et prêts à être personnalisés.

il est livré également avec les squelettes pour multisaison, voir la démo correspondante et pour beeSpip. Pour une utilisation avec multisaison ou beeSpip, copiez le contenu de plugin_thelia/squelettes_multisaison ou plugin_thelia/squelettes_beespip dans votre répertoire /squelettes

Installation

Pour fonctionner, ce plugin requiert une installation préalable du logiciel Thélia en version 1.3.3 ou supérieure dans le même répertoire que SPIP.

C’est à dire qu’après l’install vous devriez avoir une arborescence du style :

/
  /admin
  /classes
  /client
  /config
  /ecrire
  /fonctions
  /IMG
  /lib
  /local
  /oo
  /plugins
  /template
  /tmp
  index.php
  spip.php
  ...etc...

Je vous invite à consulter le site de Thélia pour obtenir toutes les informations nécessaires sur l’installation de thélia (en gros, copiez les fichiers puis lancez /install) [1].

Vous pouvez installer SPIP et Thélia dans la même base.

Etape 1 : Installation du plugin. Récupérez le zip du plugin thélia ainsi que celui du plugin CFG sur l’espace de téléchargement de la Zone : http://files.spip.org/spip-zone/ [2]. L’installation se déroule ensuite comme pour tous les autres plugins, cf. http://www.spip.net/fr_article3396.html

L’installation se fait dans le répertoire /plugins/plugin-thelia

Etape 2 : Fichiers de redirection. Vous avez deux possibilités :

- copier les fichiers contenus dans le répertoire plugin-thelia/pb_htaccess à la racine de votre site (recommandé)

- ou copier le contenu du fichier htaccess.plugin_thelia.txt fourni avec le plugin dans le fichier .htaccess à la racine de votre site.

Etape 3 : Activation et choix de la version . Depuis le page d’administration des plugins, ouvrez le plugin thélia :

puis entrez dans la page de configuration du plugin pour choisir la version de Thélia que vous utilisez :

un bouton vous permet d’accéder au catalogue Thélia depuis l’espace privé SPIP (Edition->Catalogue Thélia) :

Modification légère de la syntaxe de Thélia

Certaines balises Thélia sont identiques aux balises SPIP, par exemple #TITRE, #CHAPO. Pour éviter une confusion entre les deux moteurs, il sera nécessaire de modifier légèrement la syntaxe des balises Thélia.

La modification à faire est la suivante : préfixer les balises du mot THELIA- et supprimer le caractère #.

Ainsi, la balise #TITRE se rapportant à un titre Thélia doit être renommée THELIA-TITRE

Exemple de boucle Thélia

Pour illustrer la ressemblance entre la syntaxe SPIP et la syntaxe Thélia, voici un exemple de boucle simple (liste des rubriques du site)

Boucle SPIP :

Boucle Thélia :

Boucle Thélia adaptée pour le plugin :

Pour en savoir plus sur les boucles et balises Thélia, consultez le wiki Thélia

P.-S.

Pour aller plus loin avec le plugin : url-rewriting, association produits Thélia / articles SPIP, multilinguisme... reportez vous à l’article : utilisation avancée du Plugin Thélia.

Notes

[1] Après l’installation vous n’avez plus besoin de copier le contenu du répertoire template à la racine de votre site

[2] En cas de problême sur ce lien de téléchargement voir les sites miroirs


Répondre à cet article

  • Plugin Thélia

    21 juin 2008 11:09, par patdef

    Bonjour,

    J’essaye de créer un nouveau plugin pour thelia de façon à permettre d’ajouter un commentaire lors d’une commande. Pour cela, je m’inspire du plugin "commentaires" disponible dans les contributions de thelia.

    Mais je rencontre déjà mon premier problème : impossible de faire fonctionner correctement ce plugin sous spip-thelia.

    - La partie création de la table commentaires dans thelia à fonctionnée :
    la table commentaires à bien été ajoutée dans la base

    - La partie boucle fonctionne aussi :
    si j’insère un commentaire à la main dans la base, il m’est possible de l’afficher sur une page.

    - Mais la partie action ne fonctionne pas.
    J’ai beau essayer toutes les combinaisons qui me viennent à l’esprit, rien y fait : impossible d’insérer un commentaire dans la base à partir d’une page produit.

    Un exemple du formulaire que j’utilise dans la page produit.html :

    <form action="#URL_PAGE{produit, ref=THELIA-REF&id_rubrique=THELIA-RUBRIQUE_ID}" method="post" name="uncommentaire" id="uncommentaire">
            <input type="hidden" name="thelia_action" value="ajcommentaire" />
            <input type="hidden" name="commentaire_ref" value="THELIA-PRODUIT_REF" />
            Nom : <input type="text" name="commentaire_nom" /><br />
            Message : <input type="text" name="commentaire_message" /><br />
            <input type="submit" value="OK" />
    </form>

    J’ai aussi essayé d’ajouter dans l’url la mention thelia_action=ajcommentaire, mais ça n’a pas améliorer la situation.

    Y aurait-il une astuce ou une contrainte à spip-thelia qui pourrait expliquer mon problème ?

    Y a-t-il une erreur que je n’ai pas vue dans le formulaire ?

    Toutes vos remarques sont les bienvenues.

    patdef
    viaperlata

    PS : Je profite de ce message pour vous remercier pour le travail que vous avez réalisé sur spip et thelia.

    Répondre à ce message

    • Plugin Thélia 21 juin 2008 22:38, par Arnault Pachot

      Salut Patdef,

      pour que le plugin commentaire fonctionne, il faut changer ligne 102 dans commentaires/Commentaires.class.php :

      if(isset($_POST['action']) && $_POST['action'] == "ajcommentaire"){

      par

      if(isset($_POST['thelia_action']) && $_POST['thelia_action'] == "ajcommentaire"){

      je l’ai mis sur le site de test : http://plugin-thelia.openstudio.fr/...

      j’ai ajouté le code suivant dans le squelette :

      tiens moi au courant,

      a+

      Répondre à ce message

      • Plugin Thélia 22 juin 2008 09:13, par patdef

        Bonjour Arnault,

        Effectivement, il suffit de modifier action en thelia_action dans la fonction action() pour que le plugin retrouve ses fonctionnalités d’insertion dans la base.

        J’aurais du y penser !

        Merci de m’avoir indiquer la méthode à suivre. Je vais pouvoir continuer ma démarche de développement d’un nouveau plugin.

        Répondre à ce message

    Retour au début des forums

  • menu déroulant

    23 mai 2008 01:12, par Olivier

    Dis-moi, avant de me lancer, que me conseilles-tu de faire pour un menu déroulant vertical comme sur ton site "menu-fretin" ? Et peut-on en faire un horizontal sur le même principe ?

    Merci pour ton aide.

    Répondre à ce message

    • menu déroulant 27 mai 2008 09:41, par Arnault Pachot

      Salut,

      L’effet déroulant est obtenu avec jQuery. Je n’ai pas eu le temps d’en faire un plugin jQuery facile à installer, pour l’instant c’est une solution "sur mesure". Regarde aussi sur mon site, sur la page d’accueil j’en ai mis un pour les dernières réalisations.

      Le principe est simple, un div "container" de position fixe, dans lequel on déplace les éléments vers la gauche ou vers la droite (si par exemple ils ont une position absolue et qu’on fait varier leur attribut ’left’) .

      Avec "overflow : hidden", sur le "container", ce qui dépasse ne se voit pas.

      après, regarde le code source pour voir plus précisément.

      Si tu veux qu’on développe ensemble un plugin jQuery puis ensuite un plugin pour spip (qui remplirait le menu horizontal avec des articles taggés d’un mot clefs particulier, ou des brèves) contacte moi, ça serait plus simple à intégrer, on pourrait imaginer insérer dans le squelette une simple balise spip dans les squelettes et le reste serait automatique...

      on pourrait faire un ’clone’ de l’anim en flash de http://hasselblad.fr/

      ++

      Répondre à ce message

      • menu déroulant 27 mai 2008 14:25, par olivier

        Bonjour,

        J’ai réussi très simplement en allant voir sur cette page (alsacreations).

        C’est un menu accordéon vertical vraiment beau et simple.

        Quand j’aurais le temps, je le testerais à l’horizontal.

        Pour ce qui est de créer un plugin, ça serait une bonne idée si j’étais développeur mais je n’ai point ce talent. Désolé.

        PS. Tu n’as toujours pas testé le plugin commentaires ? Je bloque toujours la-dessus.

        Merci

        Répondre à ce message

    Retour au début des forums

  • Plugin Thélia

    16 juin 2008 10:44, par greg73

    Bonjour

    Alors je débute et je cherche toujours comment faire pour intégrer de façon plus jolie (dans une rurique par exemple) les formulaires de connexion (mon compte, mot de passe, etc) plutôt que sur la page d’accueil. J’utilise Thelia et BeeSpip, donc j’ai bien copié les squelettes correspondant dans /squelttes et je ne comprends plus comment avancer. Ya t’il un mot clé à faire apparaitre dans une rubrique, pour qu’elle soit interprétée par le bon squelette ? Merci !

    Répondre à ce message

    Retour au début des forums

  • URL rewriting

    5 juin 2008 16:55, par olivier

    Bonjour,

    Qu’elle est la méthode pour réécrire les URL (URL rewriting) ?

    J’ai essayé avec "htaccess.plugin_thelia.txt" en ajoutant le "." mais faut-il le renommer .htaccess ou .htaccess.plugin_thelia ?

    Ou le placer ?

    Y a t-il autre chose a modifier ?

    Je ne trouve pas la solution.

    Merci pour votre aide

    Olivier

    Répondre à ce message

    • URL rewriting 5 juin 2008 23:37, par olivier

      J’ai reussi, pour obtenir :

      produit.php?ref=1&id_rubrique=1

      au lieu de :

      spip.php?page=produit&ref=1&id_rubrique=1

      Il faut ajouter au .htaccess de la racine le contenu du fichier htaccess.plugin_thelia.txt. Ensuite il faut mettre <a href="THELIA-URL">THELIA-TITRE</a>

      QUESTION : Que faut-il ajouter dans le .htaccess pour obtenir un url réécrit (THELIA-REWRITEURL) comme par exemple : bonbons_5_haribo__45001.html ?

      Merci

      Répondre à ce message

      • URL rewriting 6 juin 2008 09:17, par Arnault

        Salut,

        oui tu peux utiliser également la réecriture d’adresse coté thélia. Il faut ajouter dans le .htaccess le code suivant (à l’endroit où se trouvent les rewriterules) :

        Ensuite, dans les squelettes (inc-rubriques.html, rubrique_thelia.html, produit.html..etc..) remplacer les URL spip vers des rubriques ou des produits par la balise THELIA-REWRITEURL.

        par exemple, dans rubrique_thelia.html ligne 48 et 54 :

        devient :

        je viens de le mettre en place sur le site de test : http://plugin-thelia.openstudio.fr/...

        ++

        Répondre à ce message

        • URL rewriting 6 juin 2008 11:24, par olivier

          Bonjour,

          ca ne marche pas chez moi, j’obtiens bien une URL du type tbonbons_5_haribo__13349.html mais la page est en erreur 404, avez-vous une idee ?

          Répondre à ce message

          • URL rewriting 6 juin 2008 12:51, par Arnault

            je dirais que le .htaccess n’est pas correctement interprété. peut-être que les rewriterules pour thélia sont au mauvais endroit .. ?

            as-tu un lien qu’on regarde ?

            Répondre à ce message

    Retour au début des forums

  • Plugin Thélia

    5 juin 2008 00:38, par olivier

    Bonjour,

    J’ai besoin de cacher un produit sur thélia, exactement comme l’on peut le faire sur spip avec : id_article !=1.

    Est-ce prévu ?

    Merci

    Répondre à ce message

    Retour au début des forums

  • Plugin Thélia

    1er juin 2008 14:21, par Marc VALLETEAU de MOULLIAC

    Bonjour, j’ai installé les éléments comme indiqué, et j’avoue que je suis impressionné par le travail effectué : pas un souci, et ça marche !!

    J’ai complété le fichier .htaccess avec les lignes comme indiquées (en local pour le moment) et la fonctionnement est ok.

    Mais maintenant, je suis bloqué : comment faire pour mettre en place une interface personnalisée ? Avec spip, je fais comme suit : un rep /squelettes, mes squelettes de dans, ainsi que le css etc. C’est évidemment ce que j’ai fait, mais, une fois ma page sommaire.html dedans, je ne vois plus le menu de Thelia !! Spip me lit bien cette page, mais sans les menus ’standards’ de droite. Je ne trouve d’explcation nulle part sur ce phénomène.

    Enfin, il est écrit plus haut de modifier le mot-clé #THELIA ... et là, je ne comprends pas : il faut créer un groupe de mots-clés pour thelia afin que cela fonctionne avec Spip ou quoi ?

    Y a-t-il un endroit où cela est expliqué, en dehors de la syntaxe des boucles, qui, elle, est simple à assimiler ...

    Merci, et encore bravo pour ce plugin qui nous redonne de la liberté !!

    Marc

    Répondre à ce message

    • Plugin Thélia 1er juin 2008 14:51, par Marc VALLETEAU de MOULLIAC

      Bon, je me réponds à moi-même pour ce qui est du redesign : ça marche bien dans le dossier squelettes !! En fait, j’avais testé avant de modifier le fichier .htaccess, alors, ça ne pouvait pas marcher !! Ouf, de ce côté-là, c’est ok, et encore bravo pour cette association !! Je suis aux anges !!

      Mais, du côté du mot-clé THELIA, je suis toujours sec ... Juste une petite piste ??

      Je continue néanmoins à chercher ...

      Marc

      Répondre à ce message

      • Plugin Thélia 1er juin 2008 16:56, par Arnault Pachot

        Salut,

        il ne s’agit pas d’un mot clef au sens de SPIP, mais d’une syntaxe particulière à utiliser dans l’écriture des boucles Thélia. Il faut tout simplement préfixer les balises de Thélia par le mot THELIA- pour éviter une confusion avec les balises SPIP.

        par exemple une balise thélia #URL doit être appelée THELIA-URL

        ++

        Répondre à ce message

        • Plugin Thélia 1er juin 2008 20:48, par jicew

          Bonjour,

          Je me raccroche à ce fil de discussion car moi aussi je ne comprends pas trop cette histoire de modification de balise. Dans quels fichiers de spip faut-il faire ces adaptations ? Au fait j’ai déja installé spip, puis le pluggin EGT et ensuite Thelia. Je retrouve bien le plugin thelia dans l’espace privé et ça semble fonctionner. Maintenant je ne sais pas comment créer une rubrique magasin de mon site et indiquer qu’un article peut être acheter avec toute les fonctionnalités de thelia.

          Merci

          Répondre à ce message

          • Plugin Thélia 2 juin 2008 09:10, par Arnault Pachot

            [jicew] : Comme tu utilises également le plugin EGT, tu ne vois pas les squelettes fournis avec le plugin Thélia, car ceux d’EGT les surchargent. Il faut donc que tu surcharges dans /squelettes avec des squelettes personnalisés pour la vente en ligne dans lesquels tu auras ajouté des boucles THELIA en fonction de tes besoins :
            - pour lister les rubriques de produits,
            - pour afficher le panier
            - pour accéder au compte client
            - ...etc...

            inspire-toi des squelettes fournis avec le plugin, par exemple inc-rubriques.html

            ++

            Répondre à ce message

        • Plugin Thélia 2 juin 2008 08:22, par Marc VALLETEAU de MOULLIAC

          Oui, merci Arnaud, effectivement, j’ai regardé de près ton code dans les pages de Thelia du plugin, et la lumière est venue progressivement !!

          D’ailleurs, une question en passant : est-il possible que je mette des pages dans le dossier squelettes avec du code de Thelia dedans, ou dois-je obligatoirement mettre les pages avec les boucles Thelia dans le plugin ?

          Merci de tes conseils. Marc

          Répondre à ce message

          • Plugin Thélia 2 juin 2008 08:28, par Arnault Pachot

            Salut Marc,

            oui, il vaut mieux travailler dans /squelettes. Ainsi la maintenance du site sera facilitée.

            a+

            Répondre à ce message

            • Plugin Thélia 2 juin 2008 17:01, par Marc VALLETEAU de MOULLIAC

              Merci Arnaud, mais il y a cependant un truc que je ne comprends pas : lorsque je prends (par ex.) le fichier inc-rubriques.html qui est dans le rep /plugin-thelia et que je le mets dans mon répertoire /squelettes (les deux répertoires sont à la racine du site), les boucles Thelia ne sont plus interprétées. Evidemment, en le remettant à sa place, tout rentre dans l’ordre ...

              Or, tous mes développements spip, sans exception, sont dans squelettes (ou tout autre rep qui en fait office), c’est important que je puisse donc en faire de même avec thelia (si c’est possible, évidemment !) ...

              Y a-t-il un truc à régler dans Thelia pour que les fichiers de squelettes soient pris en compte ?

              Marc

              Répondre à ce message

              • Plugin Thélia 2 juin 2008 17:07, par Arnault Pachot

                Si la page est recalculée, c’est le fichier dans squelettes qui est pris en compte, ceci est indépendant du plugin Thélia. As-tu un lien pour qu’on regarde ?

                Répondre à ce message

                • Plugin Thélia 2 juin 2008 18:46, par Marc VALLETEAU de MOULLIAC

                  Oui, je sais, j’ai bien évidemment vidé le cache et recalculé la page, mais ça reste sans changement ... J’ai bien, à la racine du site : les fichiers de spip, ceux de thelia, un rep plugins avec, entre autres, plugin-thelia dedans, un rep squelettes destiné à recevoir les squelettes ...

                  Je n’ai pas encore mis le site en ligne, mais tu peux le voir ici : http://81.64.217.35:888/generationvin

                  Cependant, il faudrait que je sois là quand tu regarderas, car j’ai remis les choses dans l’ordre initial. On pourrait essayer ensemble, qu’en penses-tu ? Sans vouloir te prendre trop de temps (06 61 79 17 31).

                  A plus tard. Marc

                  Répondre à ce message

    Retour au début des forums

  • je n’arrive pas à remplir mon panier !

    30 mai 2008 09:18, par ced

    Bonjour !

    J’ai un souci avec votre plugin.

    Tout se passe bien si ce n’est que je n’arrive pas à remplir mon panier !

    Quand j’appuye sur le bouton du panier (pour mettre mon élément dedans), voici la page qu’il charge : http://www.monsite.be/spip.php?page...

    Du coup mon panier reste vide.

    J’ai pourtant suivi toutes les étapes de l’installation.

    Auriez vous une idée ?

    Merci de tout coeur,

    Cédric

    Répondre à ce message

    Retour au début des forums

0 | 25 | 50 | 75 | 100 | 125 | 150 | 175 | 200 |...



Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | Charte et vie SPIP-Contrib | SPIP | L'autre.net