vente en ligne, ecommerce

Thélia

Pour utiliser les boucles Thélia dans vos squelettes

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

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 [1] 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 et 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) [2].

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 : https://files.spip.net/spip-zone/ [3]. L’installation se déroule ensuite comme pour tous les autres plugins, cf. https://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 et Thélia < 1.5.1 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 Thélia 1.5 (inutile pour Thélia 1.5.1), vous devez :
-  désactiver l’encodage en UTF8 dans le panneau CFG du plugin Thélia
-  remplacer dans le fichier /fonctions/hierarchie.php les fonctions suivantes : (Merci à A. Bourdeau pour cette information)

// Renvoie le chemin pour aller à une hierarchie d'objets, avec protection contre les
// références circulaires dans la hiérarchie d'objets.
function _chemin($id, $nomobj, $lang=1){

	$ids = array();

	$tab = array();

	$tobj = new $nomobj();
	$tobj->parent = $id;

	$objdesc = $nomobj."desc";

	// On doit toujours retourner au moins un element, sinon bouclage dans l'admin...
	$tab[] = new $objdesc();

	$idx = 0;

	while(intval($tobj->parent) != 0) {
		$ids[] = $tobj->parent;

		$tobjdesc = new $objdesc();

		if (intval($tobj->parent) > 0 && $tobj->charger($tobj->parent) && $tobjdesc->charger($tobj->id, $lang))
		{
			if (in_array($tobj->parent, $ids))
			{
				die("Référence circulaire détectée dans la hiérarchie des ${nomobj}s à partir de l'ID=$tobj->id. Chemin: ".implode(" -&gt; ", $ids));
			}

			$tab[$idx++] = $tobjdesc;
		}
		else
		{
			// Chargement impossible -> arrêt
			break;
		}

	}

	return $tab;
}

// renvoie le chemin pour aller à une rubrique donnée
function chemin($id, $lang=1){
	return _chemin($id, 'Rubrique', $lang);
}

// renvoie le chemin vers un dossier
function chemin_dos($id, $lang=1){
	return _chemin($id, 'Dossier', $lang);
}

par :

// Renvoie le chemin pour aller à une hierarchie d'objets, avec protection contre les
// références circulaires dans la hiérarchie d'objets.
function _chemin_thelia($id, $nomobj, $lang=1){

	$ids = array();

	$tab = array();

	$tobj = new $nomobj();
	$tobj->parent = $id;

	$objdesc = $nomobj."desc";

	// On doit toujours retourner au moins un element, sinon bouclage dans l'admin...
	$tab[] = new $objdesc();

	$idx = 0;

	while(intval($tobj->parent) != 0) {
		$ids[] = $tobj->parent;

		$tobjdesc = new $objdesc();

		if (intval($tobj->parent) > 0 && $tobj->charger($tobj->parent) && $tobjdesc->charger($tobj->id, $lang))
		{
			if (in_array($tobj->parent, $ids))
			{
				die("Référence circulaire détectée dans la hiérarchie des ${nomobj}s à partir de l'ID=$tobj->id. Chemin: ".implode(" -&gt; ", $ids));
			}

			$tab[$idx++] = $tobjdesc;
		}
		else
		{
			// Chargement impossible -> arrêt
			break;
		}

	}

	return $tab;
}

// renvoie le chemin pour aller à une rubrique donnée
function chemin($id, $lang=1){
	return _chemin_thelia($id, 'Rubrique', $lang);
}

// renvoie le chemin vers un dossier
function chemin_dos($id, $lang=1){
	return _chemin_thelia($id, 'Dossier', $lang);
}

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 :

<ul>
<BOUCLE_rubriques(RUBRIQUES)>
	<li><a href="#URL_RUBRIQUE">#TITRE</a></li>
</BOUCLE_rubriques>
</ul>

Boucle Thélia :

<ul>
<THELIA_rubriques type="RUBRIQUE">
	<li><a href="#URL">#TITRE</a></li>
</THELIA_rubriques>
</ul>

Boucle Thélia adaptée pour le plugin :

<ul>
<THELIA_rubriques type="RUBRIQUE">
	 <li><a href="THELIA-URL">THELIA-TITRE</a></li>
</THELIA_rubriques>
</ul>

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

Notes

[1Depuis 2014, Thelia propose une nouvelle version v2 qui n’est plus compatible : vous devez toujours utiliser la version 1.5.4.2 de Thélia, que vous trouverez sur SourceForge..

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

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

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.

Discussion

304 discussions

  • 1
    Nicolas

    Bonjour à tous,

    D’abord, mille bravo pour votre plug in !
    Je viens de l’installer sur mon spip en 2.1.10

    J’ai réussi à mettre deux produits mais, hélas, si je clique sur « Ajouter au panier »

    Je tombe sur « Aucun squelette panier.html n’est disponible... »

    J’ai bien un squelette produit.html dans plugins/auto/modeles mais pas de panier.html

    Ai-je fait un oubli quelque part ?

    Pour mieux comprendre
    http://lorigine.fr/Boutique.html

    Merci mille fois !

    Répondre à ce message

  • Bonjour,

    Testé sur la démo : lorsqu’on s’identifie avec un compte client (clic sur « se connecter » ou après validation du panier) on reste sur la page connexion tout en étant bien identifié (le menu « mon compte » le confirme)

    C’est assez troublant pour l’internaute, aucune redirection n’est prévue ? Ou alors ça ne fonctionne pas :\

    Répondre à ce message

  • 9

    Bonjour,

    Est-ce que une version spip3 est prévu, ou l’actuelle a déjà été testé sous spip3 ?

    Merci
    Rainer

    • Bonjour,
      J’ai testé l’utilisation en direct, ça ne marche pas, (normal).
      En bricolant les déclarations de compatibilité, j’arrive à faire reconnaitre le plugin par SPIP 3.0, mais entre autre, les tables spip_produitsarticles et spip_produitsrubriques ne sont pas crées ni exploitées par spip.
      Le reste des trans formations devraient êtres réalisées par les concepteurs du plugin spip_thelia qui connaissent bien les deux domaines.
      Donc à suivre. Amicalement

    • Avec quelques adaptations basique (déclaration comptabilité, configuration), pour le moment j’arrive à le faire fonctionner, mais j’en ai pas encore fait des test très poussés.

    • bonjour, je viens des modifs pour la compatibilité avec SPIP3

      -  forumulaire d’association avec les produits et rubriques thélia dans le backoffice
      -  formulaire de configuration du plugin
      -  déclaration de compatibilité

      J’attends vos retours, de mon côté, j’ai installé le site de démo en SPIP3 et thélia 1.5.2béta pour faire des tests.

      ++

    • Super, merci, je te tiens au courant

    • Je viens de faire quelques adaptations au code : : http://zone.spip.org/trac/spip-zo...

      J’éspère que ça convient

    • Bonjour,
      Avant de passer en exploitation, je test en local (ubuntu 10.4, SPIP 3.0.1 [19436], thelia V 1.5.1 et plugin spip _ thelia :
      Arnault Pachot, Gilles Vincent, Claude Chadoutaud, Aurélien Dumas
      Version :
      1.5 SVN [61630]
      Répertoire :
      plugins/auto/spip_thelia/v1.5/ )

      Thélia est dans une sous directorie du dossier /var/www/thelia spip est à la racine /var/www
      Si j’active le plugin spip_thelia, j’obtiens une page blanche pour la gestion des articles dans la partie privée de spip. en désactivant le plugin tout revient dans l’ordre.

      Que me faut-il modifier pour trouver ce qui conce et pour débloquer la situation.

      Merci d’avance Alain BOURDEAU

    • Je complète le message :

      En installant un double de thélia au même niveau que spip ( /var/www/ ), thélia qui pointe sur la même base de données que le premier, plus de problème, fonctionnement corecte de la page de gestion des articles.

      Ma question devient : que faudrait-il uniquement dupliquer du thélia (/var/www/thelia/) son sous répertoire vers le répertoire racine pour obtenir le même résultat ? Et ainsi ne pas ’sur charger’ le site.

      Merci bien Alain BOURDEAU

    • Bonjour Arnaud

      Pour un site en spip 3.01 j’aimerai utiliser authentification de spip pour Thélia, ce qui est prévu dans le plugin ne fonctionne pas pour spip 3.01 donc j’aimerai l’adapter.

      En regardant le code j’ai des questions et des suggestion pour modifier le fonctionnement prévu actuellement.

      Actuellement si on choisit la connexion spip dans cfg inc-connesion prevoit la Balise [(#LOGIN_PUBLIC{#URL_PAGE{adresse}})] que je ne sais pas si elle est encore utilise par[(#FORMULAIRE_LOGIN_{#URL_PAGE{adresse}})]
      .

      Ensuite au lieu de surcharger formulaire/login.php je suggère utiliser le pipeline formulaire_verifier

      donc

      function spip_thelia_formulaire_verifier($flux){
      	include_spip('inc/config');
      	$form = $flux['args']['form'];
      	$data = $flux['data'];
      	
      	if($form=='login' AND ire_config("spip_thelia/auth_unique_spip_thelia")=="oui") ){
      		include_spip('auth/thelia');
      		$session_thelia=charger_fonction('thelia_3','auth');
      		$session=$session_thelia(_request('var_login'),_request('password'));
      	
      		}
      	
      	return $flux;
      	}

      Si je me connecte maintenant via #FOMULAIRE_LOGIN cela ne fonctionne pas encore, il y bien un cookie session posé mais je suis encore renvoyé vers la page connexion après la validation du panier.

      En regardant auth/thelia,php apparament thelia contrôle d’abord si login et mot de passe coïncident avec les client thélia, ce qui n’est souvent pas le cas,

      Pourquoi ce double check ? Ne serait-il pas plus simple de créer automatiquement la session thélia après une authentification réussite par spip en les liant via l’email ?

      Lors de la création d’un compte thélia il faudrait injecte les infos dans clients et spip_auteurs

      Qu’est-ce que tu en penses ?

      Je veux bien essayer de coder tout à fait mais j’aurai besoin de coup de main pour le coté Thelia que je ne comprends pas trop

    Répondre à ce message

  • 1

    bonjour

    j’essaie de découvrir le couple spip/thelia .. et ca ne va pas comme je veux
    j’installe un spip vierge en local… (spip 2.1.10) et dès que j’installe le plugin

    j’obtiens …
    Erreur HTTP 500 (Internal Server Error)

    j’ai essayé avec une version spip 3 vierge .. idem .....

    j’ai essayé d’ajouter le plugin thelia sur un site existant (spip 2.1.12) et il me met le bazard en me disant qu’il y a un plugins d’installlé, et en me cachant les autres . ?????

    qu’est ce qui coince ????

    si vous avez une idée

    • je reponds a moi meme, au cas où je ne sois pas le seul dans ce cas là.
      j’ai inversé mon ordre d’installation,
      d’abord un spip 3.0 vierge et ensuite thelia 1.5.1 et l’installe fonctionne.

      en revanche, j’ai bien paramétré le plugin ici
      ecrire/ ?exec=configurer_spip_thelia
      en donnant le nom du répertoire admin « admin_jac »
      mais si je vais dans edition
      /ecrire/ ?exec=spip_thelia_catalogue
      je recupére un message
      Not Found

      The requested URL /admin_jac was not found on this server. ??
      D’ou peut venir cette erreur ?
      alors que visiblement la base thelia est bien reconnu (les produits sont bien listé dans la partie "produits associés à l’article)

    Répondre à ce message

  • 1

    Bonjour,

    J’ai un gros problème de compatibilité entre Spip et Thélia, suite à une mise à jour de spip en 2.1.13 (dernière version de Thelia et plugin spip Thelia, chez OVH en Php 5_4).
    Le panier ne fonctionne plus, il semblerait que le lien avec la base de données et le système de session soit cassés.
    Je n’ai pas de sauvegarde de la base en 2.1.12, ce qui aurait été bien plus simple, je dois donc trouver une solution à ce problème...
    Le panier semble fonctionner au départ, mais ne créée pas de nouveau compte et ne fait plus le lien avec les étapes suivantes : adresse, cheque.

    Le site se trouve ici, si vous voulez voir les nombreuses erreurs : www.derniertelegramme.fr. Les erreurs s’affichent sur la partie publique, lorsque vous ajoutez un ouvrage au panier.
    Exemple : http://www.derniertelegramme.fr/spip.php?page=panier&thelia_action=ajouter&ref=978-2-917136-53-9

    J’ai également des erreurs dans la partie privée.

    Warning : Illegal string offset ’id_auteur’ in /homez.218/derniert/www/plugins/plugin-thelia/formulaires/login.php on line 51
    Lorsque j’affiche le formulaire d’indentification /ecrire

    — 
    Warning : Creating default object from empty value in /homez.218/derniert/www/plugins/plugin-thelia/spip_thelia_fonct.php on line 49

    Strict Standards : Only variables should be passed by reference in /homez.218/derniert/www/ecrire/inc/utils.php on line 1060

    Sur toutes les pages de l’espace privé.

    Je vous remercie d’avance infiniment pour les pistes que vous pourrez me donner.
    Enora

    • Problème résolu, voici la solution !

      Les messages d’erreurs venaient de la version php, je suis repassées en 5_3 chez ovh, c’était déjà mieux !
      Ensuite, j’ai fini l’installation de Thélia telle qu’Alain l’avait décrit ici.

      Un premier Thélia à la racine su serveur avec les dossiers spip, le plugin spip-thélia activé, les rubriques et produits entrés dans ce Thélia, les liens articles/rubriques et produits/rubriques activés (grâce au plugin).
      Thélia et Spip ayant chacun une base de donnés indépendante.

      Puis installation d’un deuxième thélia dans un répertoire indépendant à la racine du serveur. Ce nouveau Thélia occupe la même base de données que l’autre Thélia.
      A la fin de l’installation de celui-ci, bien changer l’adresse de la boutique en mettant www.monsite/thelia (ou le nom que vous avez donné au répertoire du 2e Thélia).

      Vous avez alors toutes les infos du premier Thélia dans le deuxième.
      Déclarer la base de donnés Thélia en tant que base complémentaire dans spip.

      Pour faire le lien vers le panier, utiliser la boucle donnée par Alain (utilisant ici le plugin produit virtuel, mais pas obligatoire), et ça fonctionne parfaitement !

      Boucles typique :

            [(#REM) Association produit thélia ]
             <B_produitsassocies>
      <ul>
             <BOUCLE_produitsassocies(
      PRODUITS_ARTICLES){id_article}>
      <li>
      <BOUCLE_voir(thelia_2:produit){id=#ID_PRODUIT}>
             <a
      href="[(#URL_SITE_SPIP)]/thelia/?fond=produit&id_produit=#ID_PRODUIT&id_rubrique=80" class="cadre_gris">Commander</a><br />
      <BOUCLE_desc(thelia_2:produitdesc){produit=#ID}>
      [(#_desc:CHAPO*)<br />]
      </BOUCLE_desc>
      <BOUCLE_detail(thelia_2:prodvirtuel){produit=#ID}>
       la version électronique<br />[Fichier : (#_detail:NOM)<br />]
      </BOUCLE_detail>
      </B_detail>
      la version papier
      <//B_detail>
      pour : #PRIX&nbsp;&euro;
      </BOUCLE_voir>
      </li>
             </BOUCLE_produitsassocies>
      </ul>
             </B_produitsassocies>
             <//B_produitsassocies>
       

      Ainsi spip et thélia peuvent travailler indépendamment, sans problème.
      J’ai remanié l’interface graphique de Thélia pour que le passage entre spip et Thélia soit le plus transparent possible.

      Le résultat ici : http://www.derniertelegramme.fr

    Répondre à ce message

  • Bonsoir à tous,

    J’ai installé Thelia 151 et spip 2113, le plugin 143. La présentation des rubriques lorsqu’il existe une sous rubrique, est totalement bizarre....
    On a plus les boutons, le titre et les différentes fenetres ne s’affcihent plus normalement. Est-ce normal ? Quelqu’un a t il une solution ?

    Répondre à ce message

  • 2
    Alesk\o_

    Bonjour,
    je galère pas mal avec la réécriture d’url dans thelia + spip

    je suis en Thelia 1.5.1 et spip 2.1.12,

    il y a cette règle que je n’ai jamais réussi à faire fonctionner :

    
    #RUBRIQUE ############## 
    RewriteRule ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_([a-z0-9-]*)_\.html spip.php?page=rubrique_thelia&id_rubrique=$2 [NC,QSA,L] 
    RewriteRule ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_\.html spip.php?page=rubrique_thelia&id_rubrique=$2 [NC,QSA,L] 
    RewriteRule ^([a-z0-9-]*)_([0-9]*)_\.html spip.php?page=rubrique_thelia&id_rubrique=$2 [NC,QSA,L] 
    
    #PRODUIT ############# 
    RewriteRule ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_([a-z0-9-]*)__([^.]*)\.html spip.php?page=produit&ref=$5&id_rubrique=$2 [NC,QSA,L] 
    RewriteRule ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)__([^.]*)\.html spip.php?page=produit&ref=$4&id_rubrique=$2 [NC,QSA,L] 
    RewriteRule ^([a-z0-9-]*)_([0-9]*)__([^.]*)\.html spip.php?page=produit&ref=$3&id_rubrique=$2 [NC,QSA,L] 
    #FIN THELIA
    
    

    J’ai demandé sur le forum de Thélia on me dit d’appliquer cette règle, mais qui ne fonctionne pas non plus :

    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([a-zA-Z_.\-0-9]+)$ index.php?url=$1 [L,QSA]
    
    

    pourtant je mets tout ça dans le .htaccess à la racine (celui de spip)

    Quelqu’un à déjà été confronté au pb et à une idée ?

    Répondre à ce message

  • 5

    Bonsoir à tous,

    Je viens par ici car j’ai un petit problème avec spip-thelia, certainement pas bien grave, mais que je n’arrive pas à résoudre. Je précise que j’utilisais spip 2.1.10 + thelia 1.4.x sans souci, mais que pour un nouveau projet, je suis passé à Thelia 1.5. Je ne sais pas si c’est lié.

    Quoi qu’il en soit, j’ai installé spip 2.1.10 + spip-thelia (à jour) + thelia 1.5 en suivant la documentation figurant en haut de cette page. J’arrive à cela :
    http://dev2.de-charybde-en-scylla.fr/spip.php?page=connexion

    Mais il m’est impossible de me connecter. De la même manière, il m’est impossible d’ajouter un article au panier, par exemple l’article suivant :

    http://dev2.de-charybde-en-scylla.fr/spip.php?article20

    Le panier reste désespérément vide, comme si spip-thelia ne se préoccupait pas des arguments passés sur l’URL. En revanche, lorsque je clique sur « mot de passe perdu », je reçois bien un mail avec un nouveau mot de passe.

    Il va sans dire que j’ai vérifié dans les logs d’apache qu’il n’y avait pas d’erreur. La question est donc la suivante : qu’ai-je encore fait comme bêtise ? Une idée ?

    Merci de votre attention (et merci à l’équipe de développement pour le plugin).

    JKB

    • Pour être plus précis, j’ai l’impression que les routines dans le répertoire fonctions ne sont plus appelées...

    • Bon, ça progresse, mais ça ne fonctionne toujours pas. En fait, les fonctions du répertoire fonctions de thelia génèrent des url du type
      http://dev2.de-charybde-en-scylla.fr/?fond=panier&action=ajouter&ref=1&append=1

      Avec un superbe ?fond= qui est chamboulé par le fichier spip.php grâce aux lignes suivantes :

      if (isset($_GET['fond'])) {
              include_spip('inc/headers');
              redirige_par_entete(generer_url_public($_GET['fond']));
       }

      desquelles l’URL sort toute cassée. En particulier, http://dev2.de-charybde-en-scylla.fr/?fond=panier&action=ajouter&ref=1&append=1 devient http://dev2.de-charybde-en-scylla.fr/spip.php?page=panier. Ça fonctionne donc moins bien.

      J’ai essayé de remplacer toutes les occurrences de fond= dans les fichiers du répertoire fonctions par page=, mais j’obtiens une autre erreur : « fichier ajouter introuvable ».

      Toujours pas d’idée ? ;-)

      JKB

    • Bon, je continue le monologue, mais ça risquera d’aider au debug de la bête. Le problème est que l’appel de Thelia se fait au travers de spip.php. Le plugin attend des choses dans $_REQUEST qui ne contient plus les bonnes valeurs (du fait du passage dans spip.php et de la redirection). J’ai essayé de bidouiller avec $_SESSION, mais les classes passent mal, il faudrait les sérialiser, ce qui représenterait un gros boulot. Grossièrement, j’ai copié $_REQUEST dans $_SESSION dans spip.php et j’ai fait le contraire dans spip_thelia_fonct.php. Je n’ai pas réussi à contourner ce problème de sérialisation qui me fait planter le panier à la ligne 26 de substipanier.php (mais c’est déjà mieux, cela veut dire que les arguments sont bien transmis).

    • Bon, désolé pour le bruit, c’est une régression du passage de Thelia 1.4 au 1.5... Je suis en train de reprendre tous mes squelettes. Ce n’est pas très pratique, mais je sais au moins d’où vient l’erreur... Il me reste une interrogation, mais je vais créer un fil à part rien que pour elle ;-)

    • La chourmette

      Bonjour,
      J’ai le même problème. Mon url de panier est celle-ci
      http://www.monsite.fr/spip.php?page=panier&lang=fr
      et m’amène donc à une erreur 404.
      Comment avez-vous résolu ce souci ?
      Merci d’avance pour vos précisions !

    Répondre à ce message

  • Renée Picard

    J’ai longuement cherché avant de trouver :
    Pour lister les sous-rubriques thelia par ordre alphabétique dans squelettes/inc-rubriques.html il faut donner alpha comme critère de classement. Ceci n’est pas documenté dans le wiki.
    <THELIA_sous_rubriques type="RUBRIQUE" parent="THELIA-ID" classement="alpha">

    Répondre à ce message

  • 4
    Renée Picard

    Bonjour

    J’ai déjà fait, avec beaucoup de difficultés, un site SPIP-THELIA (http://www.paniersdici.com).
    J’ai un nouveau contrat qui demande un site marchand. Pour éviter de recommencer l’expérience SPIP-THELIA, j’ai fait un SPIP pour la partie infos et un THELIA pour la partie commerce en ligne.
    Cette solution fonctionne bien. Sauf pour le menu. Il faut écrire à la main les liens dans THELIA. Dans SPIP j’utilise la fonction articles virtuelles. J’aimerais avoir des infos sur le URL REWRITING.

    Comme j’ai bien compris le fonctionnement de THELIA et que je connais bien SPIP, je me suis dit que je pourrais ré-essayer le couple SPIP-THELIA. le site serait plus homogène et la navigation simplifiée. Je galère depuis plusieurs heures.

    J’ai réussi à installer un THELIA dans SPIP. J’ai changé login.php dans le formulaire du plugin car il y avait un tas d,erreurs. J’ai changé le .htacces. J’ai cette erreur aux pages rubriques :

    Warning : Cannot modify header information - headers already sent by (output started at /home/conc5987/public_html/coffretsforest/ecrire/exec/naviguer.php:59) in /home/conc5987/public_html/coffretsforest/fonctions/moteur.php on line 28

    Par contre l’ajout de <produit1> à la page article fonctionne mais lorsque je clique sur panier, j’obtiens une erreur 404.

    Dois-je retourner à la solution de départ : un SPIP un THELIA séparé ? ou ces 2 erreurs se r`glent facilement ?
    Merci de votre aide.

    RP

    • Renée Picard

      J’ai tout refait mes devoirs en neuf : SPIP neuf, Thelia neuf, plugin Thelia neuf.
      Cela fonctionne ! Il y a donc de l’espoir. Merci

      Le seul « bug » est pour se connecter à l’espace privé. Le fait de changer .../plugins/auto/plugin-thelia/formulaires/login.php par celui de .../prive/formulaires/login.php règle le bug
      RP

    • Avec le même montage « neuf » j’ai aussi un bug avec la page de connexion (dans mon cas c’est lorsqu’un utilisateur inscrit s’identifie avant d’arriver à l’étape 3).

      Simplement le processus reste bloqué sur l’étape 2. Il faut alors avoir l’idée de cliquer de nouveau sur « Votre panier contient... » afin d’arriver automatiquement à l’étape 3 (car l’identification se fait correctement), il n’y a simplement pas de redirection sur la page suivante en cas de succès.

      J’ai donc suivi ton astuce en remplaçant login.php mais rien y fait. En ayant bien vider le cache bien sur.

      As-tu eu un problème similaire ?

    • Même problème pour moi, pour l’instant pas de solution.
      J’en parle sur le forum de thelia.

    • ZiWaM, j’ai posté une réponse sur ce sujet ici : http://thelia.net/forum/viewtopic.php?pid=46230#p46230

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom