SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

290 Plugins, 198 contribs sur SPIP-Zone, 74 visiteurs en ce moment

Accueil > Interactivité, échanges > Forums > Boucle (FORUMS) : les messages d’un secteur

Boucle (FORUMS) : les messages d’un secteur

1er septembre 2004 – par GoUaRfIg ! – commentaires

3 votes

Voici une méthode 100% SPIP pour sélectionner des forums par secteur

Introduction

Comme chacun sait ou ne sait pas, on ne peut pas sélectionner des forums par secteur comme suivant :

<BOUCLE_SUJETS_FORUMS(FORUMS){id_secteur}{par date}{inverse}>
 [(#TITRE)]<br>
</BOUCLE_SUJETS_FORUMS>

Ceci est du à la logique et l’organisation des forums dans SPIP.

Voici donc comment faire en utilisant le critère{doublons} :

Principe

Un principe de base du langage SPIP est : Si tu ne peux directement sélectionner des éléments, élimine les autres éléments pour ne garder que ceux qui t’intéressent.

Et c’est exactement ce que nous allons faire.

Explications

Commençons par sélectionner la rubrique courante :

<BOUCLE_forums_rubrique(RUBRIQUES){id_rubrique}>
</BOUCLE_forums_rubrique>

Considérant notre rubrique courante, nous allons sélectionner toutes les AUTRES rubriques racines donc les secteurs différents du secteur auquel appartient notre rubrique courante :

<BOUCLE_forums_rubrique(RUBRIQUES){id_rubrique}>
 <BOUCLE_secteurs(RUBRIQUES){exclus}{racine}>
 </BOUCLE_secteurs>
</BOUCLE_forums_rubrique>

A partir de là, nous allons sélectionner les forums associées aux rubriques et aux articles pour chaque secteur.

Pour les forums des rubriques (et sous-rubriques) du secteur on utilise {id_secteur} :

   <BOUCLE_supp(RUBRIQUES){id_secteur}>
     <BOUCLE_supp2(FORUMS){id_rubrique}{plat}{doublons}>
     </BOUCLE_supp2>
   </BOUCLE_supp>

Pour les forums des articles du secteur :

   <BOUCLE_supp3(ARTICLES){id_secteur}>
     <BOUCLE_supp4(FORUMS){id_article}{plat}{doublons}>
     </BOUCLE_supp4>
   </BOUCLE_supp3>

Résumons : Nous avons sélectionné tous les forums de rubriques et forums d’articles qui appartiennent aux secteurs différents du secteur courant.
Il ne nous reste donc qu’à sélectionner et afficher tous les forums qui n’ont pas déjà été sélectionnés :

<BOUCLE_SUJETS_FORUMS(FORUMS){doublons}{par date}{inverse}>
 [(#TITRE)]<br>
</BOUCLE_SUJETS_FORUMS>

Résultat - Boucles complètes :

<BOUCLE_forums_rubrique(RUBRIQUES){id_rubrique}>
 <BOUCLE_secteurs(RUBRIQUES){exclus}{racine}>
   <BOUCLE_supp(RUBRIQUES){id_secteur}>
     <BOUCLE_supp2(FORUMS){id_rubrique}{plat}{doublons}>
     </BOUCLE_supp2>
   </BOUCLE_supp>
   <BOUCLE_supp3(ARTICLES){id_secteur}>
     <BOUCLE_supp4(FORUMS){id_article}{plat}{doublons}>
     </BOUCLE_supp4>
   </BOUCLE_supp3>
 </BOUCLE_secteurs>
</BOUCLE_forums_rubrique>

<BOUCLE_SUJETS_FORUMS(FORUMS){doublons}{par date}{inverse}>
 [(#TITRE)]<br>
</BOUCLE_SUJETS_FORUMS>

P.-S.

Merci à Fil et à BoOz pour l’idée originale

Dernière modification de cette page le 21 janvier 2007

Retour en haut de la page

Vos commentaires

  • Le 21 mai 2008 à 21:52, par Philippe G. En réponse à : Boucle (FORUMS) : les messages d’un secteur

    Comme les carabiniers j’arrive (très) en retard, mais je n’avais pas besoin de cette fonction avant.
    Il y a une erreur dans les lignes ci-dessus, entre autre la position de la BOUCLE_SUJETS_FORUM qui doit se trouver dans la BOUCLE_forums_rubrique.

    Si on veut lister les titres des forums du secteur 4, le code sera le suivant :

    <BOUCLE_forums_rubrique(RUBRIQUES){id_secteur=4}>
            <BOUCLE_secteurs(RUBRIQUES){exclus}{racine}>
                    <BOUCLE_supp3(ARTICLES){id_secteur}>
                            <BOUCLE_supp4(FORUMS){id_article}{plat}{doublons}>
                            </BOUCLE_supp4>
                    </BOUCLE_supp3>
            </BOUCLE_secteurs>       
            <BOUCLE_SUJETS_FORUMS(FORUMS){doublons}{par date}{inverse}>
                    [(#DATE|affdate_court) &ndash; ]<a href="#URL_FORUM">#TITRE</a>
                    <br />
            </BOUCLE_SUJETS_FORUMS>       
    </BOUCLE_forums_rubrique>

    Sauf erreur de ma part, bien entendu.

    Répondre à ce message

  • Le 22 mai 2005 à 17:33, par Jcrusot En réponse à : > Boucle (FORUMS) : les messages d’un secteur

    Bonjour

    Je viens de passer des heures à chercher une solution à mon problème. J’ai crée un forum dans une page nomé perso_forum.php en y incluant la balise (#FORMULAIRE_FORUM

    L’affichage du formulaire se fait très bien ainsi que la prévisualisation du message, mais par contre le retour de l’envoie définitif du message se fait sur la page article.php3 alors que je la voudrais sur perso_forum.php avec en plus comme argument l’id_rubrique.

    Merci de votre aide
    Jcrusot

    Répondre à ce message

  • Le 21 avril 2005 à 23:38, par Oumar En réponse à : > Boucle (FORUMS) : les messages d’un secteur

    Alors merci beaucoup les gars, vous êtes des pros. J’aurai mis 150 ans à pouvoir afficher tous les commentaires de mon foutu secteur. Merci encore, bonne continuation et vive SPIP !! vive SPIP-contrib !! et vive les SPIPiens (je c’est pas si c’est comme cela qu’on dit).

    Allez ciao !
    Oumar

    Mon Site

    Répondre à ce message

  • Le 7 novembre 2004 à 19:01, par Eric Lombard En réponse à : > les messages classés par secteur

    J’ai essayé d’utiliser cette boucle pour l’affichage des 10 derniers messages de chaque secteur, classés par secteur, mais sans succès.
    La première itération de la boucle pour le premier secteur fonctionne, mais la deuxieme iteration et les suivantes ne renvoient rien. La raison en est que le critère « doublons » empeche la selection des messages deja tous selectionnes dans l’iteration precedente.
    Avez vous une idee pour resoudre ce probleme ? Il faudrait en quelque sorte arriver a reinitialiser le flag « doublons ».
    Merci d’avance

    <font size='4'><b>Les dernières contributions</b></font>
            <BR>
           
            <BOUCLE_rubriques2(RUBRIQUES){id_parent=0}{par titre}{inverse}>

            <BR><B>[(#TITRE|majuscules|supprimer_numero)]</B>
            <BR>
            <!---Suppression forum articles autres secteurs--->
           
           
            <BOUCLE_secteurs(RUBRIQUES){exclus}{racine}>
            <BR><B>#TITRE</B>

            <BOUCLE_supp_article(ARTICLES){id_secteur}>
                    <BR>#ID_ARTICLE #TITRE       
                            <BOUCLE_supp_forum1(FORUMS){id_article}{plat}{doublons}>
                            <BR>#ID_ARTICLE #ID_FORUM
                            </BOUCLE_supp_forum1>
                    </BOUCLE_supp_article>
                   
                    <BOUCLE_supp_breve(BREVES){id_secteur}>
                    <BR>#ID_BREVE #TITRE               
                            <BOUCLE_supp_forum3(FORUMS){id_article}{plat}{doublons}>
                            <BR>#ID_BREVE #ID_FORUM
                            </BOUCLE_supp_forum3>
                    </BOUCLE_supp_breve>
           
            </BOUCLE_secteurs>
           

            <BOUCLE_Forums(FORUMS){doublons}{par date}{inverse}{0,10}>
            <p>
            <BOUCLE_ArticleForum(ARTICLES){id_article}><a href="#URL_ARTICLE#forum#ID_FORUM"></BOUCLE_ArticleForum>
            <BOUCLE_BreveForum(BREVES){id_breve}><a

    href="#URL_BREVE#forum#ID_FORUM"></BOUCLE_BreveForum>
            <//B_BreveForum><//B_ArticleForum>
            #TITRE</a>
            <br>
            Le [(#DATE|nom_jour)] [(#DATE|affdate)][, par <b>(#NOM)</b>]
            </BOUCLE_Forums>

            <BR>
            <hr WIDTH="100%">
            </BOUCLE_rubriques2>

            </FONT>
           

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Passer un site SPIP sous https://

    23 février 2017 – 42 commentaires

    Comment migrer simplement votre site SPIP de http:// vers https:// Le protocole https:// devient de plus en plus courant : C’est mieux pour la vie privée de tous La plupart des grands sites l’a déjà adopté Certains navigateurs commencent à afficher (...)

  • SPIP 3.2, Agenda et FullCalendar

    6 juin – 20 commentaires

    Nous avions publié un article sur la manière d’utiliser FullCalendar avec SPIP 3.0 afin d’afficher des évènements sous forme d’Agenda. La version de FullCalendar a changé avec SPIP 3.2. Le présent article est donc un tutoriel adapté à SPIP 3.2. Pour (...)

  • Grappes 1.0

    23 novembre 2012 – 36 commentaires

    Présentation et nouveautés Cette version 1.0 du plugin Grappes est un portage pour SPIP 3.x. Le plugin permet de grouper des objets de SPIP dans des grappes. Les objets du core (articles, rubriques, auteurs, etc.) sont pris en charge, ainsi que (...)

  • PHANTOM (HTML5UP)

    18 juillet – commentaires

    Squelette SPIP pour intégrer le modèle Phantom de HTML5UP. https://html5up.net/phantom Installation A l’activation, le plugin installe aussi les plugins suivants : crayons, favicon, metasplus+, Couleur d’objet, champs extras, SPIP reset centre (...)

  • Cycle2

    7 août 2014 – 119 commentaires

    La seconde version de la librairie Javascript « jQuery Cycle », qui permet de produire des diaporamas, se nomme « Cycle2 » : http://jquery.malsup.com/cycle2/. Voici cette nouvelle librairie mise en plugin pour SPIP. Si vous utilisez déjà « jQuery (...)