guiderdoni.net

Bloc notes : spip, css, xhtml, web, standards, mac ...

Accueil > Spip > Sélectionner des rubriques spécifiques, exclure des articles

Articles de cette rubrique

Articles

publie le mercredi 13 juillet 2005 par Alexandra

Sélectionner des rubriques spécifiques, exclure des articles

Exlure des rubriques

{id_rubrique !IN 17,18}

ou {id_rubrique !== ^(17|18)$}

Exclure une rubrique

<BOUCLE_secteurs(RUBRIQUES){racine}{par titre}{id_rubrique!=7}>

Exclure certaines rubriques

<BOUCLE_secteurs(RUBRIQUES){id_rubrique!==^(2|3|9|12)$}>
</BOUCLE_secteurs>

Sélectionner certaines rubriques

<BOUCLE_secteurs(RUBRIQUES){id_rubrique==^(1|5|10|20)$}>
</BOUCLE_secteurs>

Sélectionner des rubriques qui se touchent

<BOUCLE_secteurs(RUBRIQUES){id_rubrique==^[10-20]$}>
</BOUCLE_secteurs>

Sélectionner des rubriques par comparaison

Toutes les rubriques entre 5 et 10

<BOUCLE_secteurs(RUBRIQUES){id_rubrique>5}{id_rubrique<10}>
</BOUCLE_secteurs>

Toutes les rubriques inférieures à 10 et supérieures à 20

<BOUCLE_secteurs(RUBRIQUES){id_rubrique<10}{id_rubrique>20}>
</BOUCLE_secteurs>

Même chose pour les articles

1. Possibilité de choisir un article dans une liste
Dans une boucle, il est possible de tester si l’id d’un article, ou d’un mot clé, est égal à une valeur, avec le critère :

... BOUCLE_1 {id_article=4}...

ou différent d'une valeur ... BOUCLE_1 {id_article<>4} ...

Il est aussi possible d’étendre ce test à une liste d’articles, ou de mots-clés :

BOUCLE_1 {id_article==^(4|5|6)$}

ou différent d’une liste de valeurs :

BOUCLE_1 {id_article!==^(4|5|6)$}

Attention cependant à ne pas utiliser de "0" en 1er chiffre : ne pas mettre "04", mais "4", car PHP interprète 04 en 84 (un nombre commençant par un zéro est compris en octal (base 8)... et le résultat peut être tout à fait fantaisiste, en particulier si aucun article n’a pour id 884...

http://www.spip-contrib.net/spikini/TrucsAstucesSubtilit

Un site sur les expressions régulières

http://www.expreg.com/symbole.php

Voir aussi :
http://www.commentcamarche.net/php/...

Comparaisons, égalités

- critère < valeur

Comparaison avec une valeur fixée (on peut utiliser « > », « < », « = », « >= », « <= ». Tous les critères de classement (tels que tirés de la base de données) peuvent également être utilisés pour limiter le nombre de résultats.

Par exemple :

<BOUCLE_art(ARTICLES){id_article=5}>

affiche l’article dont le numéro est 5 (utile pour mettre en vedette un article précis sur la page d’accueil).

                        <BOUCLE_art(ARTICLES){id_secteur=2}>

affiche les articles du secteur numéro 2.

Expressions régulières.

Très puissant (mais nettement plus complexe à manipuler), le terme de comparaison « == » introduit une comparaison selon une expression régulière.

Par exemple

<BOUCLE_art(ARTICLES){titre==^[aA]}>

sélectionne les articles dont le titre commence par « a » ou « A ».

La négation

Négation. On peut utiliser la notation xxx != yyy, le ! Correspondant à la négation (opérateur logique NOT).

<BOUCLE_art(ARTICLES){titre!==^[aA]}>

sélectionne les articles dont le titre ne commence pas par « a » ou « A ».

<BOUCLE_art(ARTICLES){id_secteur != 2}>

sélectionne les articles qui n’appartiennent pas au secteur numéro 2.

On peut combiner plusieurs de ces critères pour effectuer des sélections très précises.

Par exemple :

<BOUCLE_art(ARTICLES){id_secteur=2}{id_rubrique!=3}{age<30}>

affiche les articles du secteur 2, à l’exclusion de ceux de la rubrique 3, et publiés depuis moins de 30 jours.

Sur les expressions régulières

http://forum.spip.org/fr_529.html

Solution et décodage :

id_groupe !==^(9|10|7)$

 ! : not

== : regexp

^ / $ : debut/fin de l’expression

( ... | ... ) : alternative

Voir aussi la contrib d’Olivier G sur comment exclure selon un mots clés

http://www.spip-contrib.net/Exclure...

Forum

Répondre à cet article

2005-2017 - Contenu en GPL http://www.guiderdoni.net - Site réalisé avec SPIP 
rechercher - plan du site - prive - alexandra.guiderdoni@gmail.com
CSS - XHTML - squelette