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.
Documentations complémentaires
- Utilisation avancée du plugin Thélia
- Insérer des produits Thélia dans les articles
- Wiki Thélia
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.
Pour spip 2.0 vous devez également :
- modifier le fichier /ecrire/inc/utils.php et mettre en commentaire la fonction chemin() (ligne 671),
- copier le contenu du répertoire plugin-thelia/squelettes_spip2.0 dans votre répertoire /squelettes
Pour zpip, vous devez :
- copier le contenu du répertoire plugin-thelia/squelettes_zpip dans votre répertoire /squelettes
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








Plugin SPIP-Thélia
Vos commentaires
# Le 9 août à 17:30, par Philippe
Le passage en 2.1.1 est source de message d’erreurs lorsque qu’un administrateur essaye se connecter.
Impossible, et une liste de lignes du type
Notice : Undefined offset : 2 in /home/xxxcom/ecrire/auth/sha256.inc.php on line 207
# Le 29 août à 15:04, par fred
Bonjour,
Personnellement, ce problème s’est résolu en changeant de version PHP : version 5.2 -> version 5.3.
Je n’en connais pas l’origine.
Fred
# Le 29 août à 18:04, par Philippe
Mince, mince, mince je suis en 5.2.3.
Merci pour l’info
Répondre à ce message
# Le 27 août à 09:45, par laregie
J’ai court-circuité la page de transport, car il n’y a pas de choix dans les modes de transports.
Mon site est en anglais.
Lorsque je passe de la page "adresse" à la page "commande", la requête ne peut aboutir. Alors que sur Internet Explorer, la page mouline à l’infini, sur Firefox, il semble qu’il y ait une boucle de redirection et j’arrive à l’erreur suivante :
Redirection de page incorrecte
Firefox a détecté que le serveur redirige la demande pour cette adresse d’une manière qui n’aboutira pas.
* La cause de ce problème peut être la désactivation ou le refus
des cookies.
Cette erreur n’est pas systématique, mais très régulière, et je l’ai moins souvent sur Firefox Mac que sur PC.
Pourriez-vous m’aider ?
# Le 27 août à 09:55, par Arnault Pachot
si tu utilises l’authentification unique spip/thélia, mettre à jour le plugin et effacer les cookies de session dans le navigateur, j’ai fais quelques correctifs la semaine dernière sur les pbs de redirection
# Le 27 août à 10:04, par ?
Merci pour la réponse.
Or, je n’utiliser pas l’identification unique Spip Thelia.
# Le 27 août à 10:32, par ?
J’ai trouvé :
Dans la page commande.php, il fallait mettre $transport = 0 ;
Merci
# Le 27 août à 11:52, par laregie
J’ai placé $transport = 0 ; dans spip.php car je suis en version URL_REWRITE.
Or, le problème réapparaît.
Répondre à ce message
# Le 25 août à 22:32, par seds
bonjour
j’ai vu sur google la même question que je m’apprête à poser sur un post daté du 26 juin 2007 que je n’ai pas retrouvé.
au risque que ma question paraisse répétitive comment met-on en commentaire ces lignes
/*function chemin($file, $dirname='', $include=false){return find_in_path ($file, $dirname, $include);
}
*/
dans les lignes 670-671
creer_chemin(); // forcer un recalcul du chemin et la mise a jour de path_sig}
ok je pige rien encore au php. j’ai vu qu’il y avait souvent des lignes entre parenthèse alors j’ai fait :
creer_chemin(/*function chemin($file, $dirname='', $include=false){return find_in_path ($file, $dirname, $include);
}
*/); // forcer un recalcul du chemin et la mise a jour de path_sig
}
mais apparemment c’est pas ça. bref, en 2 clics pouvez-vous m’éclairer ?
merci d’avance !
Répondre à ce message
# Le 24 août à 00:04, par Benoît
Petit souci avec le plugin Bandeau :
Ce plugin (http://www.spip-contrib.net/Bandeau,3556) apporte vraiment du confort dans l’espace privé. Mais une fois le plugin Thélia installé, par contre, ça "casse" le bandeau. Il doit y avoir une question de pipeline quelque part. J’avoue que je ne saurai comment y remédier. Cela ne doit pas être grand chose. Et cela reste un détail, je vous l’accorde. Mais l’ergonomie, ça compte aussi !
# Le 24 août à 12:22, par Benoît
Je réponds à moi-même, car j’ai trouvé une solution (je ne sais pas si c’est la meilleure, mais cela fonctionne) :
Dans le dossier du plugin Thelia, dans le fichier plugin.xml, j’ai enlevé ceci :
<pipeline><nom>ajouter_boutons</nom>
<action>ajouter_boutons</action>
<inclure>spip_thelia_fonct.php</inclure>
</pipeline>
Que j’ai remplacé par ceci :
<bouton id='Thelia' parent='bando_edition'><titre>Boutique Thélia</titre>
<url>?exec=spip_thelia_catalogue</url>
</bouton>
Alors, ce qui n’est pas très bien est que cette modification partira à la mise à jour du plugin. Mais cela fonctionne. Le lien vers Thélia est maintenant sagement rangé dans le menu Edition, et ne vient plus faire une grande ligne vide sous la barre des menus.
Répondre à ce message
# Le 20 août à 15:14, par Pierbou
Cette contrib est une initiative plutôt prometteuse. Je m’y penche depuis quelques jours, et j’achoppe toujours sur les problèmes récurrents d’encodage des caractères entre SPIP et Thélia...
J’ai une installation SPIP-2.0.9, Thelia 1.4.3.1, et le plugin du 11/05/2010-rev-38133. Les deux outils sont installés sur deux BDD distincts... Mon SPIP est évidemment en UTF-8, et Thelia.... en ISO-8859-1 (ISO-8859-15 ?).
Les différentes pistes évoqués dans le présent forum n’ont rien donné, évidemment... Je crois d’ailleurs qu’elles s’appliquaient à des versions plus anciennes...? Je suppose que l’issu se situe quelque par dans le fichier spip_thelia_fonct.php du plugin, mais où ?
Quelqu’un a une idée ?
# Le 23 août à 19:05, par pierbou
Bon, j’en rajoute une couche....
Ce plugin répond parfaitement à mes attentes, mais j’ai un vrai problème avec l’encodage des caractères accentués... J’ai du mal à imaginer que je suis le seul !
J’ai légèrement personnalisé le formulaire d’inscription client afin de conserver les champs valides d’une inscription incomplète. Je trouve en effet insupportable d’avoir à retaper l’ensemble du formulaire lorsqu’un seul champs a été omis... Pour cela, j’ai modifier le fichier inc-formulerr.html comme indiqué dans ce post :
http://www.spip-contrib.net/Utilisa...
Mais les valeurs que je récupère et qui comportent des caractères accentués sont alors mal interprêtée par le plugin lorsque l’encodage UTF-8 est désactivé... Lorsque j’active, ce sont l’ensemble des champs Titres, descriptions issus de Thelia qui partent en vrille...
Ces données de formulaire d’inscription client ne semblent pas soumises aux mêmes filtres que les autres champs Thelia...
Personne n’a été confronté à ça ???
Répondre à ce message
# Le 1er août à 12:31, par ?
Bonjour et merci pour ce plugin.
ca faisait un bout de temps que j’attendais la fonction d’identification unique.
je voudrai juste avoir quelques précisions :
* il est dit que l’identification se fait "via le formulaire de login" de spip,mais comment se fait l’inscription ? via Thélia ou via Spip (formulaire - [(#FORMULAIRE_INSCRIPTIONforum)] ) ?
*Par ailleurs, ce formulaire d’inscription quand on est sous spip-thélia permet à l’internaute de rentrer directement son mot de passe, ce que ne fait pas le formulaire natif de spip. Je n’ai jamais reussi a obtenir de réponse sur SPIP pour savoir si le process d’inscription qui se passe en plusieurs temps et par mail était lié a des questions de sécurités ou pas. Du coup est ce que cette maniere de faire où l’internaute rentre son mdepasse dans le formulaire est sécurisée ?
*Enfin, est ce qu’il serait possible d’utiliser ce même formulaire sur un spip simple sans thélia ?
*Dernier point : personnellement je souhaiterais pouvoir avoir la main pour valider ou non les inscriptions. Je sais qu’il y a un plug in sous thelia et que par ailleurs je crois que c’est le comportement par défaut de spip quand on n’autorise pas les inscriptions automatiques. Du coup est ce qu’il faut installer le plugin thélia de validation sous spip-thélia ou pas ?
bon ca fait bcp de questions, je m’arrête ;-)Merci pour les précisisons
# Le 9 août à 10:18, par Piere-Jean
Des réponses à ces questions ?
Des retours sur l’authentification unique ?
Le formulaire thélia permet-il réellement aux nouveaux inscrits de choisir leur mdp ?
6 mois après mes premiers essais qui furent des plus laborieux je recherche des webmasters intéressés afin de réaliser une commande "groupée" d’un plugin performant et indolore pour :
- permettre aux auteurs actuels et futurs de devenir des acheteurs sur la boutique Thélia
- les identifier en toute transparence via le formulaire de login SPIP
- leur laisser le choix du mot de passe à l’inscription
- inviter les auteurs dont l’inscription est incomplète à renseigner les informations nécessaires aux envois/facturations avant la fin du processus de commande
... et donc à plusieurs de réduire les coups de ce développement.
M’écrire ? - colliot@pierrejean.com (mettre un tiret ("-") entre pierre et jean)
# Le 19 août à 20:01, par Madrilene
Bonjour Pierre Jean
je suis l’auteure du post au dessus (j’ai du zappé le champ "nom" par erreur).
Est ce que tu as reussi a installer Spip-thelia dans sa dernière version avec justement l’authentification unique ?
# Le 20 août à 09:30, par Pierre-Jean
@ Madrilene : Non, ça fait plusieurs mois que j’ai abandonné ce développement, mais j’y reviens aujourd’hui... De mon côté j’ai fait développer un formulaire CVT pour spip permettant de choisir son mdp à l’inscription.
Le hic c’est que je n’ai aucune idée de la manière d’interfacer ça avec l’identification unique étant donné que j’utilise un formulaire maison et qu’il n’est pas expliqué le mécanisme de cette identification ou encore la manière dont les comptes sont créés, ou sont stockées les données...
Et toi ou en es-tu de tes tests ?
# Le 20 août à 10:58, par Arnault
Principe de l’authentification unique :
Lorsqu’un internaute se connecte, si son compte n’existe pas dans SPIP, alors on va chercher à tester une authentification dans Thélia, puis lui créer un compte dans SPIP avec un mot de passe vide.
Ensuite lorsque cet internaute se reconnectera sur le site, son compte existera maintenant dans SPIP, mais comme le mot de passe est vide, alors succèdera automatiquement une authentification dans Thélia (c’est le principe des mode d’identification multiples dans SPIP : on essaie les méthodes disponibles jusquà ce que la connexion réussit). Dans ce cas, l’internaute sera alors connecté dans SPIP et dans Thélia.
Ainsi, les mots de passe ne sont stockés que dans Thélia.
La méthode d’identification dans Thélia est définie dans le fichier /auth/thelia.php
Avec la méthode d’identification unique SPIP/Thélia, le mot de passe est choisi par l’internaute à l’inscription (c’est le mode de fonctionnement standard dans Thélia), et vous n’avez pas besoin du formulaire CVT que vous avez fait développer.
En revanche ce mode d’inscription pour un site SPIP (choix du mot de passe à l’inscription) est un besoin récurrent et nous serions heureux de pouvoir bénéficier du travail réalisé : si ce n’est pas le cas, serait-il possible de mettre à disposition de la communauté le développement réalisé ?
# Le 20 août à 11:19, par Pierre-Jean
Ok, merci beaucoup pour votre réponse et ces explications qui permettent d’y voir plus clair.
Pouvez-vous m’écrire un mail à colliot @robase pierre-jean.com, je vous ferrais un zip
Mon code intègre quelques autres spécificités, vous verrez... Si on pouvait en tirer un plugin d’authentification amélioré et maintenu à jour, ça serait top.
A tout hasard, êtes vous développeur pro. ? Je recherche un prestataire pour plusieurs développement SPIP, mais aussi du Thélia.
Si vous êtes intéressé on peut en parler par tél.
En attendant votre retour, très bonne journée à vous.
# Le 22 août à 17:43, par Madrilene
Par rapport a une identification ou l’internaute choisit son MDP en spip, je relate ce que j’ai fait il y a quelques mois, où je m’étais retrouvée (comme par enchantement) avec un formulaire où je pouvais remplir un champs avec mon mot de passe pour m’inscrire mais que je n’arrive plus à reproduire :
J’avais un spip récent et mis accés restreint dessus. Je crois me souvenir que je n’avais pas activé les inscriptions automatiques. Je suivais le texte d’explication du plugin sur spip contrib (cf commentaires madrilene sous l’article). Il y a un lien mais qui est mort vers un formulaire du coup je suis allée rechercher sur la zone ce qui pouvait y ressembler. J’ai trouvé un truc développé par Booz en 2003 je crois (assez ancien).
Ca marchait car mon identification était réelle dans la base de donnée. Le hic, c’est qu’ensuite j’ai fait des changements, en écrasant de fichiers etc..., à la suite de quoi j’ai jamais pu reproduire ce que j’ai décrit plus haut.
Conclusion, j’en déduis que des lignes de codes existent sur la zone (est ce que c’était du dev pour le plugin abonnement ?) mais où et quoi exactement, mystère.
Bon je sais c’est pas forcément trés utile, mais bon...
Ma question c’est est ce que le fait que l’internaute puisse choisir son mot de passe directement ne génère pas une faille de sécurité ? Ou est ce que le probleme vient juste des robots spammeurs ?
Merci a Arnault pour ses réponses et son travail
Répondre à ce message
# Le 25 juillet à 20:09, par mimiche
salut à tous et à toutes
j’ai un petit soucie avec le Plugin : quand je clic sur un article et ensuite je clic sur page précèdent pour revenir en arriere le site se bloque et un message s’affiche :
Fatal error : Call to undefined function unicode2charset() in /homez.361/monsite/www/plugins/auto/plugin-thelia/spip_thelia_fonct.php on line 74
quelqu’un pourrais me dire qu’est que je dois faire svp ? merci par avance
# Le 20 août à 13:17, par salsero35
Bonjour,
J’ai le même soucis :
Fatal error : Call to undefined function unicode2charset() in /homez.361/monsite/www/plugins/auto/plugin-thelia/spip_thelia_fonct.php on line 74
mais en me connectant à la racine de mon site...
Une idée ?
Merci
# Le 20 août à 13:32, par salsero35
Réponse :
Ajouter "include_spip("inc/charsets") ;" en début de plugins/plugin-thelia/spip_thelia_fonct.php
Répondre à ce message
# Le 12 août à 12:57, par james
Bonjour a tous, voila je vous expose mon problème, j’ai installé un spip 2.0.9 avec thelia 1.3.2 et le plugin-thelia, j’ai mis le contenu du dossier squelette_spip2.0 dans le dossier squelettes-dist, seulement depuis, je me retrouve avec cet erreur
Si quelqu’un a une solution je l’en remercie d’avance
# Le 18 août à 19:00, par Pascal
Bonjour, je pense que l’erreur vient du fait que tu n’as pas créé une rubrique squelettes mais que tu as transféré les fichiers dans la rubrique squelettes-dist.
Donc,
1. Crée une rubrique squelettes (avec un s à la fin) (avec un clic droit de ta souris)
2. Transfère les fichiers dans cette rubrique.
Je pense que cela ira après.
Bon essai.
Pascal
Répondre à ce message
# Le 22 juillet à 23:18, par NAD13
bonjour,
qu’est qu’on doit écrire au juste sur le fichier /ecrire/inc/utils.php, ou plutôt comment mettre en commentaire la fonction chemin() (ligne 671),
merci d’avance
# Le 10 août à 15:25, par Philippe
Tu entoures le code avec /* et */
ce qui donne
// Alias de find_in_path// http://doc.spip.org/@chemin
/*
function chemin($file, $dirname='', $include=false){
return find_in_path ($file, $dirname, $include);
}
*/
Répondre à ce message
# Le 7 août à 16:16, par Olivier CARETTE
Bonjour,
Ceplugin m’interesse énormément.
Malheureusement en installant spip et en me connectant tout fonctionne.
Malheureusement lorsque je me délog et cherche à me reconnecter dans le backend de spip, j’ai un problème de cookie alors que tout fonctionne pour les cookies dans la config de firefox (même pb avec IE). Je n’ai donc plus accès au backend.
Tout fonctionne en frontend.
Quelqu’un a t il une idée ?
Olivier
version spip = 2.1.1
dernière version de thélia
Répondre à ce message