je pédale dans la semoule ...

Je vais essayer d’expliquer simplement :

  1. mon site utilise 6 secteurs avec chacuns une ou deux « profondeur » de rubrique (exemple : secteur experts - rubrique juridique - sous rubrique dossiers

  2. la page d’accueil présente un bouton fixe (cliquable) pour chacun des secteurs. elle s’appelle rubrique.html et est lancée via un index.php3 (qui lance lui-même rubrique.php3)

  3. la page d’accueil présente les dix derniers articles QUELS que soient leur rubrique (ça marche parfaitement)

  4. chaque page « secteur » devrait présenter les articles du secteur et des rubriques enfants mais là, rien ne marche (j’ai essayé quelques critères du genre {id_secteur} mais pour que ce critère soit pris en compte, il faut lui passer une variable de type id_secteur=nn soit dans la boucle, soit dans l’appel de la page. Or, rubrique.html est utilisé dynamiquement et les url’s qui y font appel indiquent bien une variable mais de type id_rubrique. Donc, une boucle utilisant id_secteur reste muette puisque cette variable n’est pas utilisée par les url’s

  5. J’ai bien compris que pour dissocier ma rubrique accueil des autres, je devais utiliser des noms de type « rubrique-n.html » mais ce que je ne parviens pas à faire c’est écrire la boucle de lecture de la totalité des articles d’un secteur.

  6. Si par chance, quelqu’un a compris mon problème et peut le résoudre, je sauterai de joie, sinon, je vais prendre une douche et essayer de vous expliquer avec un exemple … vous pouvez allez voir le truc à www.carolo.be/index.php3 mais c’est en chantier là en ce moment

Voilou, j’adore spip mais là je sèche

Gérard

ps : mon site utilise spip de façon partielle, ce qui m’oblige à réécrire la plupart des squelettes

At 16:30 +0200 19/10/01, MaitreG (ifrance) wrote:

  1. chaque page « secteur » devrait présenter les articles du secteur et des rubriques enfants mais là, rien ne marche (j’ai essayé quelques critères du genre {id_secteur} mais pour que ce critère soit pris en compte, il faut lui passer une variable de type id_secteur=nn soit dans la boucle, soit dans l’appel de la page. Or, rubrique.html est utilisé dynamiquement et les url’s qui y font appel indiquent bien une variable mais de type id_rubrique. Donc, une boucle utilisant id_secteur reste muette puisque cette variable n’est pas utilisée par les url’s

Salut,

Je ne suis pas certain de comprendre ton problème, mais d’après le point 4 de ta description, voici quelques indications, en espérant que ça répondra à ta question…

→ Effectivement « id_secteur » n’est pas directement utilisable depuis l’URL, où l’ou trouve en réalité « id_rubrique ».

→ En réalité, le « id_secteur » est une valeur associée à chaque rubrique. Il faut donc passer par la rubrique pour récupérer le secteur.

→ Ta page d’appel d’un secteur doit donc commencer par une boucle RUBRIQUES toute simple basée sur l’id_rubrique (et non l’id_secteur):

<BOUCLE_larubrique(RUBRIQUES){id_rubrique}>

Puisque tu passes une valeur id_rubrique dans l’URL, cela te donnera évidemment une seule rubrique. Et parmi les valeurs tirées de cette rubrique (#TITRE…), il y a notamment l’id_secteur de cette rubrique (que tu peux d’ailleurs afficher avec #ID_SECTEUR si tu veux faire des vérifications). Si ta rubrique est une entrée de secteur, d’ailleurs l’id_secteur sera égal à l’id_rubrique (mais il aura fallu tout de même cette première boucle pour récupérer l’id_secteur à partir de l’id_rubrique).

Ensuite seulement, toutes les boucles à l’intérieur de cette première boucle principale pourront faire appel à {id_secteur}:

<BOUCLE_articles_recents(ARTICLES){id_secteur}…>

Amicalement,
ARNO*

Le Scarabée : http://www.scarabee.com
uZine 2 : http://www.uzine.net

DH/DSS, 0x11930F0B, DEEB 602D B344 644B AF88 BF73 85F4 2297 1193 0F0B

ok merci Arno, mon premier problème est donc réglé.

Résumons-nous :

  • la page d’accueil de mon site présente les dix derniers articles quelles que soient leurs rubriques ou sous-rubriques
  • chaque page rubrique (secteur) présente les quatre derniers articles de la rubrique ou de ses enfants (ça marche grâce à l’utilisation de secteur), ça donne (sans mise en page)

<BOUCLE_rubge (rubriques) {id_rubrique}>
<BOUCLE_ARTICLE (articles) {id_secteur}{par date}{inverse}{0,3}>
<BOUCLE_RUBRIQUE (rubriques) {id_rubrique}>
#TITRE
</BOUCLE_RUBRIQUE>
[(#DATE|nom_jour)]
[(#DATE|jour)] [(#DATE|nom_mois)]
[(#TITRE|centrer
[(#CHAPO|justifier)]lire]
</BOUCLE_ARTICLE>
</BOUCLE_rubge>

  • je voudrais la même chose avec les sous -rubriques mais sans montrer les niveaux supérieurs évidemment, ça ne marche pas.
    (j’ai essayé de mettre id_parent à la place de id_secteur mais ça génère une erreur)

Autre question : un #URL_rubrique pointe systématiquement vers une page nommée rubrique.html, donc si je nomme différemment un de mes squelettes, le lien ne marche pas. Y a-t-il une solution ?

voila voilà, … merci de votre aide

Gérard