Exclure une rubrique et toutes ses sous rubriques

Bonjour,

Depuis quelque temps, je cherche une solution pour la question suivante :
Dans une boucle Article, je cherche à exclure toutes les sous rubriques présentes dans une rubrique. Pour l’instant, je n’y parviens qu’en utilisant : !IN suivi des numéros des rubriques à exclure.
Toutes les rubriques à exclure se situent dans la rubrique 3 (qui ne contient aucun article directement).
La boucle ci-dessous fonctionne correctement, mais il se trouve que j’ai besoin fréquemment d’ajouter de nouvelles sous rubriques dans la rubrique 3 et il me faut alors retourner modifier le squelette pour rajouter les numéros de ces nouvelles sous rubriques afin de les exclure.

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN 3,13,11,20,21,26,27,28,29,30,31,38,45,80,85,89,115,121,122,126}{age < 15}{0,5}>

En gros, je cherche à pouvoir modifier cette boucle en :
<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN kekchose qui « sélectionne » toutes les rubriques de la rubrique 3}{age < 15}{0,5}>
Comme ça, en cas d’ajout de sous rubriques dans la rubrique 3, il n’y aura plus besoin de modifier les squelettes…

@+
Luc
tout nouvel inscrit sur cette liste, j’ai parcouru (un peu) les archives… sans m’y retrouver.

Bonjour à toutes et tous,

As-tu essayé avec ID_SECTEUR au lieu de ID_RUBRIQUE ?


De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net] De la part de Luc Mamin
Envoyé : mercredi 24 septembre 2008 09:30
À : spip@rezo.net
Objet : [Spip] Exclure une rubrique et toutes ses sous rubriques

Bonjour,

Depuis quelque temps, je cherche une solution pour la question suivante :
Dans une boucle Article, je cherche à exclure toutes les sous rubriques présentes dans une rubrique. Pour l’instant, je n’y parviens qu’en utilisant : !IN suivi des numéros des rubriques à exclure.
Toutes les rubriques à exclure se situent dans la rubrique 3 (qui ne contient aucun article directement).
La boucle ci-dessous fonctionne correctement, mais il se trouve que j’ai besoin fréquemment d’ajouter de nouvelles sous rubriques dans la rubrique 3 et il me faut alors retourner modifier le squelette pour rajouter les numéros de ces nouvelles sous rubriques afin de les exclure.

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN 3,13,11,20,21,26,27,28,29,30,31,38,45,80,85,89,115,121,122,126}{age < 15}{0,5}>

En gros, je cherche à pouvoir modifier cette boucle en :
<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN kekchose qui « sélectionne » toutes les rubriques de la rubrique 3}{age < 15}{0,5}>
Comme ça, en cas d’ajout de sous rubriques dans la rubrique 3, il n’y aura plus besoin de modifier les squelettes…

@+
Luc
tout nouvel inscrit sur cette liste, j’ai parcouru (un peu) les archives… sans m’y retrouver.

peut être :
#SET{rubexclu, #ARRAY{}}
<BOUCLE_srubexclu(RUBRIQUES){id_parent=3}>
#SET{rubexclu,#GET{rubexclu}|push{#ID_RUBRIQUE}}
</BOUCLE_srubexclu>

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique !IN #GET{rubexclu}}>

pierre

Le 24 sept. 08 à 09:29, Luc Mamin a écrit :

Bonjour,

Depuis quelque temps, je cherche une solution pour la question suivante :
Dans une boucle Article, je cherche à exclure toutes les sous rubriques présentes dans une rubrique. Pour l'instant, je n'y parviens qu'en utilisant : !IN suivi des numéros des rubriques à exclure.
Toutes les rubriques à exclure se situent dans la rubrique 3 (qui ne contient aucun article directement).
La boucle ci-dessous fonctionne correctement, mais il se trouve que j'ai besoin fréquemment d'ajouter de nouvelles sous rubriques dans la rubrique 3 et il me faut alors retourner modifier le squelette pour rajouter les numéros de ces nouvelles sous rubriques afin de les exclure.

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN 3,13,11,20,21,26,27,28,29,30,31,38,45,80,85,89,115,121,122,126}{age < 15}{0,5}>

En gros, je cherche à pouvoir modifier cette boucle en :
<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN kekchose qui "sélectionne" toutes les rubriques de la rubrique 3}{age < 15}{0,5}>
Comme ça, en cas d'ajout de sous rubriques dans la rubrique 3, il n'y aura plus besoin de modifier les squelettes...

@+
Luc
tout nouvel inscrit sur cette liste, j'ai parcouru (un peu) les archives... sans m'y retrouver.

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Pierre Fiches a écrit :

peut être :
#SET{rubexclu, #ARRAY{}}
<BOUCLE_srubexclu(RUBRIQUES){id_parent=3}>
#SET{rubexclu,#GET{rubexclu}|push{#ID_RUBRIQUE}}
</BOUCLE_srubexclu>

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique !IN #GET{rubexclu}}>

pierre

Bonjour,

Depuis quelque temps, je cherche une solution pour la question suivante :
Dans une boucle Article, je cherche à exclure toutes les sous rubriques présentes dans une rubrique. Pour l’instant, je n’y parviens qu’en utilisant : !IN suivi des numéros des rubriques à exclure.
Toutes les rubriques à exclure se situent dans la rubrique 3 (qui ne contient aucun article directement).
La boucle ci-dessous fonctionne correctement, mais il se trouve que j’ai besoin fréquemment d’ajouter de nouvelles sous rubriques dans la rubrique 3 et il me faut alors retourner modifier le squelette pour rajouter les numéros de ces nouvelles sous rubriques afin de les exclure.

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN 3,13,11,20,21,26,27,28,29,30,31,38,45,80,85,89,115,121,122,126}{age < 15}{0,5}>

En gros, je cherche à pouvoir modifier cette boucle en :
<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN kekchose qui « sélectionne » toutes les rubriques de la rubrique 3}{age < 15}{0,5}>
Comme ça, en cas d’ajout de sous rubriques dans la rubrique 3, il n’y aura plus besoin de modifier les squelettes…

@+
Luc
tout nouvel inscrit sur cette liste, j’ai parcouru (un peu) les archives… sans m’y retrouver.


liste spip

  • désabonnement : Infos et archives : Documentation de SPIP : irc://irc.freenode.net/spip ou

Bonjour,
La solution proposée ci-dessus ne fonctionne pas :

  • aucun affichage, même partiel, de la page
  • affichage de : Erreur : filtre « push » non défini, _srubexclu

@+
Luc

c’est peut être une exclusivité de spip2

Bon,
Il semble qu’il y ait plein de solutions, je travaille en ce moment sur spip2 beta et j’utilise cette formule:
{id_rubrique!==^(2|3|4|5|6|9|10)$} et ça marche bien
@+

Le 24 septembre 2008 12:43, Pierre Fiches <pierre.fiches@free.fr> a écrit :

Le 24 sept. 08 à 12:26, Luc Mamin a écrit :

Pierre Fiches a écrit :

peut être :
#SET{rubexclu, #ARRAY{}}
<BOUCLE_srubexclu(RUBRIQUES){id_parent=3}>
#SET{rubexclu,#GET{rubexclu}|push{#ID_RUBRIQUE}}
</BOUCLE_srubexclu>

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique !IN #GET{rubexclu}}>

pierre

Le 24 sept. 08 à 09:29, Luc Mamin a écrit :

Bonjour,

Depuis quelque temps, je cherche une solution pour la question suivante :
Dans une boucle Article, je cherche à exclure toutes les sous rubriques présentes dans une rubrique. Pour l’instant, je n’y parviens qu’en utilisant : !IN suivi des numéros des rubriques à exclure.
Toutes les rubriques à exclure se situent dans la rubrique 3 (qui ne contient aucun article directement).
La boucle ci-dessous fonctionne correctement, mais il se trouve que j’ai besoin fréquemment d’ajouter de nouvelles sous rubriques dans la rubrique 3 et il me faut alors retourner modifier le squelette pour rajouter les numéros de ces nouvelles sous rubriques afin de les exclure.

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN 3,13,11,20,21,26,27,28,29,30,31,38,45,80,85,89,115,121,122,126}{age < 15}{0,5}>

En gros, je cherche à pouvoir modifier cette boucle en :
<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN kekchose qui « sélectionne » toutes les rubriques de la rubrique 3}{age < 15}{0,5}>
Comme ça, en cas d’ajout de sous rubriques dans la rubrique 3, il n’y aura plus besoin de modifier les squelettes…

@+
Luc
tout nouvel inscrit sur cette liste, j’ai parcouru (un peu) les archives… sans m’y retrouver.


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Bonjour,
La solution proposée ci-dessus ne fonctionne pas :

  • aucun affichage, même partiel, de la page
  • affichage de : Erreur : filtre « push » non défini, _srubexclu

c’est peut être une exclusivité de spip2


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip


C’est pas parce que je suis venu, qu’il faut croire que je suis là.

Luc Mamin wrote:

Toutes les rubriques à exclure se situent dans la rubrique 3 (qui ne
contient aucun article directement).

Du pur SPIP ça:

<BOUCLE_discrimination_anti_3(RUBRIQUES){id_rubrique=3}{doublons
discrimination}>
<BOUCLE_discrimination_heritee(RUBRIQUES){id_parent}{doublons
discrimination}>
<BOUCLE_jusquaubout(BOUCLE_discrimination_heritee)></BOUCLE_jusquaubout>
</BOUCLE_discrimination_heritee>
</BOUCLE_discrimination_anti_3>

ça n'affiche rien mais ça sélectionne tout.

Après il suffit de mettre {doublons discrimination} là où tu veux
discriminer. Et paf.

J'espère :wink:

--
Suske

mailou a écrit :

Bon,
Il semble qu’il y ait plein de solutions, je travaille en ce moment sur spip2 beta et j’utilise cette formule:
{id_rubrique!==^(2|3|4|5|6|9|10)$} et ça marche bien
@+

Le 24 septembre 2008 12:43, Pierre Fiches <pierre.fiches@free.fr> a écrit :

Le 24 sept. 08 à 12:26, Luc Mamin a écrit :

Pierre Fiches a écrit :

peut être :
#SET{rubexclu, #ARRAY{}}
<BOUCLE_srubexclu(RUBRIQUES){id_parent=3}>
#SET{rubexclu,#GET{rubexclu}|push{#ID_RUBRIQUE}}
</BOUCLE_srubexclu>

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique !IN #GET{rubexclu}}>

pierre

Le 24 sept. 08 à 09:29, Luc Mamin a écrit :

Bonjour,

Depuis quelque temps, je cherche une solution pour la question suivante :
Dans une boucle Article, je cherche à exclure toutes les sous rubriques présentes dans une rubrique. Pour l’instant, je n’y parviens qu’en utilisant : !IN suivi des numéros des rubriques à exclure.
Toutes les rubriques à exclure se situent dans la rubrique 3 (qui ne contient aucun article directement).
La boucle ci-dessous fonctionne correctement, mais il se trouve que j’ai besoin fréquemment d’ajouter de nouvelles sous rubriques dans la rubrique 3 et il me faut alors retourner modifier le squelette pour rajouter les numéros de ces nouvelles sous rubriques afin de les exclure.

<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN 3,13,11,20,21,26,27,28,29,30,31,38,45,80,85,89,115,121,122,126}{age < 15}{0,5}>

En gros, je cherche à pouvoir modifier cette boucle en :
<BOUCLE_nouveau(ARTICLES){par date}{inverse}{unique}{id_rubrique!IN kekchose qui « sélectionne » toutes les rubriques de la rubrique 3}{age < 15}{0,5}>
Comme ça, en cas d’ajout de sous rubriques dans la rubrique 3, il n’y aura plus besoin de modifier les squelettes…

@+
Luc
tout nouvel inscrit sur cette liste, j’ai parcouru (un peu) les archives… sans m’y retrouver.


Bonjour,
La solution proposée ci-dessus ne fonctionne pas :

  • aucun affichage, même partiel, de la page
  • affichage de : Erreur : filtre « push » non défini, _srubexclu

c’est peut être une exclusivité de spip2

Re,

  • sous SPIP 1.9.2d, " {id_rubrique!==^(3)$} " ne fonctionne pas