Je veux faire afficher tous les produits du site
Cette boucle fonctionne mais je ne suis pas capable de faire afficher les produits par ordre alphabétique.
<BOUCLE_rub(RUBRIQUES){tout}>
<B_produitsassocies>
produits associés :
<ul>
<BOUCLE_produitsassocies(PRODUITS_RUBRIQUES){id_rubrique}>
[ <THELIA_produit#ID_PRODUIT type="PRODUIT" id="(#ID_PRODUIT)">
<li> <a href="#URL_PAGE{produit,ref=THELIA-REF}">THELIA-TITRE</a> </li>
</THELIA_produit#ID_PRODUIT>]
</BOUCLE_produitsassocies>
</ul>
</B_produitsassocies>
pas de produit associé
<//B_produitsassocies>
</BOUCLE_rub>
Je veux faire afficher tous les produits du site
Cette boucle fonctionne mais je ne suis pas capable de faire afficher les produits par ordre alphabétique.
<BOUCLE_rub(RUBRIQUES){tout}>
<B_produitsassocies>
produits associés :
<ul>
<BOUCLE_produitsassocies(PRODUITS_RUBRIQUES){id_rubrique}>
[ <THELIA_produit#ID_PRODUIT type="PRODUIT" id="(#ID_PRODUIT)">
<li> <a href="#URL_PAGE{produit,ref=THELIA-REF}">THELIA-TITRE</a> </li>
</THELIA_produit#ID_PRODUIT>]
</BOUCLE_produitsassocies>
</ul>
</B_produitsassocies>
pas de produit associé
<//B_produitsassocies>
</BOUCLE_rub>
de memoire, il faut mettre les parenthèses et crochets partout pour eviter les soucis :
[<THELIA_produit[(#ID_PRODUIT)] type="PRODUIT" id="(#ID_PRODUIT)">
...
Mais bon, les melanges THELIA / SPIP ca marche pas à tous les coups...
déjà tu es sur quelles versions de chaque ?
Moi je m'arrange pour isoler les boucles THELIA dans des inclusions.
Ceci dit, ton histoire de classement ne peut pas marcher vu que c'est ta boucle spip qui remonte les ids et que la boucle thelia remonte les produits de facon unitaire.
La en fait, la seule solution que je vois, c'est de gérer la jointure spip_produits_rubriques / produit (/ produitdesc ?)
Elle ne peut pas etre traitée automatiquement par spip je pense (peut etre avec la dernière version ?), mais un petit critere maison qui ajoute ce qu'il faut à la requete, c'est faisable
Allo
Merci de m'aider.
Je suis sur:
SPIP 2.09
Plugin thelia actuellement disponible sur SPIP-CONTRIB
THELIA 1.3.9
Beaucoup de travail a été effectué directement dans ce THELIA 1.3.9 par un programmeur en PHP pour satisfaire aux besoins de gestion de l'organisme-client.
Il n'est pas intervenu dans SPIP ni dans plugin-thelia
L'organisme veut:
- une page affichant tous les produits du site avec possibilité d'achat directement sur la page.
- une page par producteurs, affichant tous les produits du producteur et où on peut acheter directement sur la page(cela est simple avec rubrique_thelia)mais il veut aussi sur cette page le contenu de la rubrique SPIP (description de la ferme, photos ...)
L'idéal serait de faire une page rubrique.html qui inclut les produits de rubrique-thelia en ajax.
Mais je ne sais pas comment faire cela?
Je n'ai plus de logique!
Dois-je essayer d'inclure la boucle produit de rubrique-thelia dans rubrique ou à l'inverse, inclure une boucle SPIP dans rubrique-thelia?
Merci
RP
Stephane a écrit :
Renée Picard a écrit :
Je veux faire afficher tous les produits du site
Cette boucle fonctionne mais je ne suis pas capable de faire afficher les produits par ordre alphabétique.
<BOUCLE_rub(RUBRIQUES){tout}>
<B_produitsassocies>
produits associés :
<ul>
<BOUCLE_produitsassocies(PRODUITS_RUBRIQUES){id_rubrique}>
[ <THELIA_produit#ID_PRODUIT type="PRODUIT" id="(#ID_PRODUIT)">
<li> <a href="#URL_PAGE{produit,ref=THELIA-REF}">THELIA-TITRE</a> </li>
</THELIA_produit#ID_PRODUIT>]
</BOUCLE_produitsassocies>
</ul>
</B_produitsassocies>
pas de produit associé
<//B_produitsassocies>
</BOUCLE_rub>
de memoire, il faut mettre les parenthèses et crochets partout pour eviter les soucis :
[<THELIA_produit[(#ID_PRODUIT)] type="PRODUIT" id="(#ID_PRODUIT)">
...
Mais bon, les melanges THELIA / SPIP ca marche pas à tous les coups...
déjà tu es sur quelles versions de chaque ?
Moi je m'arrange pour isoler les boucles THELIA dans des inclusions.
Ceci dit, ton histoire de classement ne peut pas marcher vu que c'est ta boucle spip qui remonte les ids et que la boucle thelia remonte les produits de facon unitaire.
La en fait, la seule solution que je vois, c'est de gérer la jointure spip_produits_rubriques / produit (/ produitdesc ?)
Elle ne peut pas etre traitée automatiquement par spip je pense (peut etre avec la dernière version ?), mais un petit critere maison qui ajoute ce qu'il faut à la requete, c'est faisable
L'idéal serait de faire une page rubrique.html qui inclut les produits de rubrique-thelia en ajax.
Mais je ne sais pas comment faire cela?
ben, moi, je reproduis la structure des rubriques thelia dans spip et je map les rubriques Thelia avec les rubriques Spip, c'est dans Thelia que je gere le catalogue, pas en associant les produits aux rubriques spip...
Je n'ai plus de logique!
Dois-je essayer d'inclure la boucle produit de rubrique-thelia dans rubrique ou à l'inverse, inclure une boucle SPIP dans rubrique-thelia?
en gros je ferais :
<BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}>
<INCLUDE{fond=modeles/produit_bloc}{id=#ID_PRODUIT}>
</BOUCLE_prodt>
avec dans le modele :
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
...
</THELIA_produit[(#ENV{id})]>]
Fatal error: Maximum execution time of 30 seconds exceeded in /home/conc5987/public_html/2_panier/fonctions/parseur.php on line 43
Voici ce que j'ai fait:
Dans squelettes/rubrique.html
<BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}>
<INCLURE{fond=modeles/produit_bloc}{id=#ID_PRODUIT}>
</BOUCLE_prodt>
puis dans squelettes/modeles/produit_bloc.html
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
<li> <a href="#URL_PAGE{produit,ref=THELIA-REF}">THELIA-TITRE</a> </li>
</THELIA_produit[(#ENV{id})]>]
Que veux-tu dire par:mapper les rubriques Thelia avec les rubriques spip?
Que fais-tu dans Thelia pour associer des produits THELIA à des rubriques SPIP?
Merci
RP
Stephane a écrit :
RP a écrit :
L'idéal serait de faire une page rubrique.html qui inclut les produits de rubrique-thelia en ajax.
Mais je ne sais pas comment faire cela?
ben, moi, je reproduis la structure des rubriques thelia dans spip et je map les rubriques Thelia avec les rubriques Spip, c'est dans Thelia que je gere le catalogue, pas en associant les produits aux rubriques spip...
Je n'ai plus de logique!
Dois-je essayer d'inclure la boucle produit de rubrique-thelia dans rubrique ou à l'inverse, inclure une boucle SPIP dans rubrique-thelia?
en gros je ferais :
<BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}>
<INCLUDE{fond=modeles/produit_bloc}{id=#ID_PRODUIT}>
</BOUCLE_prodt>
avec dans le modele :
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
...
</THELIA_produit[(#ENV{id})]>]
Fatal error: Maximum execution time of 30 seconds exceeded in /home/conc5987/public_html/2_panier/fonctions/parseur.php on line 43
Voici ce que j'ai fait:
Dans squelettes/rubrique.html
<BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}>
<INCLURE{fond=modeles/produit_bloc}{id=#ID_PRODUIT}>
</BOUCLE_prodt>
puis dans squelettes/modeles/produit_bloc.html
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
<li> <a href="#URL_PAGE{produit,ref=THELIA-REF}">THELIA-TITRE</a> </li>
</THELIA_produit[(#ENV{id})]>]
et avec juste :
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
<li>THELIA-TITRE</li>
</THELIA_produit[(#ENV{id})]>]
ca donne quoi ?
Que veux-tu dire par:mapper les rubriques Thelia avec les rubriques spip?
dans SPIP je reproduis l'arborescence du catalogue (rubriques thelia) dans SPIP et, toujours dans SPIP, j'associe à chaque rubrique la rubrique thelia correspondante.
Que fais-tu dans Thelia pour associer des produits THELIA à des rubriques SPIP?
donc rien, c'est au niveau des rubrique que c'est fait.
Quand j'affiche une rubrique SPIP, je vais chercher la rubrique thelia correspondante et après, c'est du thelia...
> et avec juste :
> [<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
> <li>THELIA-TITRE</li>
> </THELIA_produit[(#ENV{id})]>]
> ca donne quoi ?
Ça donne:
Fatal error: Maximum execution time of 30 seconds exceeded in /home/conc5987/public_html/2_panier/fonctions/parseur.php on line 64
Je vais essayer rubrique-X = rubrique THELIA
RP
Stephane a écrit :
RP a écrit :
J'ai essayé et cela génère cette erreur:
Fatal error: Maximum execution time of 30 seconds exceeded in /home/conc5987/public_html/2_panier/fonctions/parseur.php on line 43
Voici ce que j'ai fait:
Dans squelettes/rubrique.html
<BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}>
<INCLURE{fond=modeles/produit_bloc}{id=#ID_PRODUIT}>
</BOUCLE_prodt>
puis dans squelettes/modeles/produit_bloc.html
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
<li> <a href="#URL_PAGE{produit,ref=THELIA-REF}">THELIA-TITRE</a> </li>
</THELIA_produit[(#ENV{id})]>]
et avec juste :
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
<li>THELIA-TITRE</li>
</THELIA_produit[(#ENV{id})]>]
ca donne quoi ?
Que veux-tu dire par:mapper les rubriques Thelia avec les rubriques spip?
dans SPIP je reproduis l'arborescence du catalogue (rubriques thelia) dans SPIP et, toujours dans SPIP, j'associe à chaque rubrique la rubrique thelia correspondante.
Que fais-tu dans Thelia pour associer des produits THELIA à des rubriques SPIP?
donc rien, c'est au niveau des rubrique que c'est fait.
Quand j'affiche une rubrique SPIP, je vais chercher la rubrique thelia correspondante et après, c'est du thelia...
> et avec juste :
> [<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
> <li>THELIA-TITRE</li>
> </THELIA_produit[(#ENV{id})]>]
> ca donne quoi ?
Ça donne:
Fatal error: Maximum execution time of 30 seconds exceeded in /home/conc5987/public_html/2_panier/fonctions/parseur.php on line 64
et avec <BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}{0,1}>
il y arrive ?
Si je mets
<BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}{0,1}>
[ <THELIA_produit#ID_PRODUIT type="PRODUIT" id="(#ID_PRODUIT)">
<li> <a href="#URL_PAGE{produit,ref=THELIA-REF}">THELIA-TITRE</a> </li>
</THELIA_produit#ID_PRODUIT>]
</BOUCLE_prodt>
et que je coche un produit dans le «panel» en début de rubrique, cela fonctionne.
RP
Stephane a écrit :
RP a écrit :
> et avec juste :
> [<THELIA_produit[(#ENV{id})] type="PRODUIT" id="(#ENV{id})">
> <li>THELIA-TITRE</li>
> </THELIA_produit[(#ENV{id})]>]
> ca donne quoi ?
Ça donne:
Fatal error: Maximum execution time of 30 seconds exceeded in /home/conc5987/public_html/2_panier/fonctions/parseur.php on line 64
et avec <BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}{0,1}>
il y arrive ?
Je viens de comprendre ceci:
Si j'utilise le modèle:
<produit|rubrique=11|classement=titre> Les produits de la rubrique sont classés par ordre alphabétique.
J'aimerais quand même savoir comment augmenter le max_execution_time PHP et comprendre le fonctionnement (PRODUIT-RUBRIQUE) qui fait le pont avec Thelia.
Merci
RP
RP a écrit :
Je ne sais pas comment faire cela.
RP
Stephane a écrit :
RP a écrit :
Si je mets
<BOUCLE_prodt(PRODUITS_RUBRIQUES){id_rubrique}{0,1}>
[ <THELIA_produit#ID_PRODUIT type="PRODUIT" id="(#ID_PRODUIT)">
<li> <a href="#URL_PAGE{produit,ref=THELIA-REF}">THELIA-TITRE</a> </li>
</THELIA_produit#ID_PRODUIT>]
</BOUCLE_prodt>
et que je coche un produit dans le «panel» en début de rubrique, cela fonctionne.
et tu as combien de produits par rubrique ?
30s de max_execution_time PHP, c'est un peu court des fois, tu ne peux pas l'augmenter un peu ?
Je viens de comprendre ceci:
Si j'utilise le modèle:
<produit|rubrique=11|classement=titre> Les produits de la rubrique sont classés par ordre alphabétique.
avec dans le modele :
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id_rubrique="(#ENV{id_rubrique})"[ classement="(#ENV{classement})"]>
...
</THELIA_produit[(#ENV{id})]>]
Mais ca ne change pas grand chose, si tu as 500 produits dans ta rubrique, ca va exploser...
J'aimerais quand même savoir comment augmenter le max_execution_time PHP
google est ton ami...
et comprendre le fonctionnement (PRODUIT-RUBRIQUE) qui fait le pont avec Thelia.
C'est simplement une boucle permettant de travailler avec la table correspondante, du SPIP standard quoi.
Cette table est alimentée dans le backoffice de Spip quand tu associes des produits aux rubriques SPIP.
Ca s'arrete la.
Je viens de comprendre ceci:
Si j'utilise le modèle:
<produit|rubrique=11|classement=titre> Les produits de la rubrique sont classés par ordre alphabétique.
avec dans le modele :
[<THELIA_produit[(#ENV{id})] type="PRODUIT" id_rubrique="(#ENV{id_rubrique})"[ classement="(#ENV{classement})"]>
...
</THELIA_produit[(#ENV{id})]>]
Mais ca ne change pas grand chose, si tu as 500 produits dans ta rubrique, ca va exploser...
J'aimerais quand même savoir comment augmenter le max_execution_time PHP
google est ton ami...
et comprendre le fonctionnement (PRODUIT-RUBRIQUE) qui fait le pont avec Thelia.
C'est simplement une boucle permettant de travailler avec la table correspondante, du SPIP standard quoi.
Cette table est alimentée dans le backoffice de Spip quand tu associes des produits aux rubriques SPIP.
Ca s'arrete la.