Recherche sur titre de mots-clés

Bonjour,

Je bute sur un truc que je pensais simple ... J'ai un formulaire de recherche dans lequel on saisi par exemple exactement "Bidules & trucs" et on envoie. C'est un champ de type text pas une liste déroulante ou un id pourrait être passé directement, c'est bien "Bidules & trucs" qui part en get (ou en post j'ai aussi essayé).

J'ai un mot-clé de saisi qui a pour titre exactement "Bidules & trucs" dans disons le groupe de mots 2.
Quelle boucle devrai-je faire pour retrouver l'id de mon mot-clé dans la page de résultats de recherche.

J'ai tenté:
<BOUCLE_test (MOTS) {id_groupe=2} {recherche}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=recherche}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=#ENV{recherche}}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=#RECHERCHE}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre==#RECHERCHE}>

J'ai aussi tenté de traiter d'abord la chaine recherchée qui à priori en get devient "Bidules+%26+trucs" en utilisant une variable intermédiaire genre #SET{search,#ENV{recherche}|urldecode} car j'ai bien l'impression que le souci vient des espaces, si j'ai un mot-clé seul (par ex "toto") ça marche.

Ça me semble simple, il y a un truc que je ne dois pas voir ... la doc dit à un endroit que le critère {recherche} ne marche que sur les boucles articles brèves et rubriques et forums (https://www.spip.net/fr_article903.html#surlignable) et donc pas mots ?

Pierre

bonjour,
Le 14 sept. 2017 à 19:32, Zedd <csi@zedd.pro> a écrit :

Bonjour,

Je bute sur un truc que je pensais simple ... J'ai un formulaire de recherche dans lequel on saisi par exemple exactement "Bidules & trucs" et on envoie. C'est un champ de type text pas une liste déroulante ou un id pourrait être passé directement, c'est bien "Bidules & trucs" qui part en get (ou en post j'ai aussi essayé).

J'ai un mot-clé de saisi qui a pour titre exactement "Bidules & trucs" dans disons le groupe de mots 2.
Quelle boucle devrai-je faire pour retrouver l'id de mon mot-clé dans la page de résultats de recherche.

J'ai tenté:
<BOUCLE_test (MOTS) {id_groupe=2} {recherche}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=recherche}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=#ENV{recherche}}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=#ENV{recherche}}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=#RECHERCHE}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre==#RECHERCHE}>

J'ai aussi tenté de traiter d'abord la chaine recherchée qui à priori en get devient "Bidules+%26+trucs" en utilisant une variable intermédiaire genre #SET{search,#ENV{recherche}|urldecode} car j'ai bien l'impression que le souci vient des espaces, si j'ai un mot-clé seul (par ex "toto") ça marche.

en fait il recherche bidules, il recherche trucs et il ajoute les résultats des deux recherches au lieu de les mettre en commun

avec « +bidules +trucs » ça devrait fonctionner avec le plugin Fulltext

cladue

Ça me semble simple, il y a un truc que je ne dois pas voir ... la doc dit à un endroit que le critère {recherche} ne marche que sur les boucles articles brèves et rubriques et forums (Les boucles et balises de recherche - SPIP) et donc pas mots ?

Pierre

Bjr,

Le 14/09/2017 à 20:33, dlatr a écrit :

bonjour,
Le 14 sept. 2017 à 19:32, Zedd <csi@zedd.pro> a écrit :

Bonjour,

Je bute sur un truc que je pensais simple ... J'ai un formulaire de recherche dans lequel on saisi par exemple exactement "Bidules & trucs" et on envoie. C'est un champ de type text pas une liste déroulante ou un id pourrait être passé directement, c'est bien "Bidules & trucs" qui part en get (ou en post j'ai aussi essayé).

J'ai un mot-clé de saisi qui a pour titre exactement "Bidules & trucs" dans disons le groupe de mots 2.
Quelle boucle devrai-je faire pour retrouver l'id de mon mot-clé dans la page de résultats de recherche.

J'ai tenté:
<BOUCLE_test (MOTS) {id_groupe=2} {recherche}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=recherche}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=#ENV{recherche}}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre=#RECHERCHE}>
<BOUCLE_test (MOTS) {id_groupe=2} {titre==#RECHERCHE}>

J'ai aussi tenté de traiter d'abord la chaine recherchée qui à priori en get devient "Bidules+%26+trucs" en utilisant une variable intermédiaire genre #SET{search,#ENV{recherche}|urldecode} car j'ai bien l'impression que le souci vient des espaces, si j'ai un mot-clé seul (par ex "toto") ça marche.

en fait il recherche bidules, il recherche trucs et il ajoute les résultats des deux recherches au lieu de les mettre en commun

avec « +bidules +trucs » ça devrait fonctionner avec le plugin Fulltext

Je pense que le pbm vient du caractère "&", si je remplace par "et" ça marche ...

cladue

Ça me semble simple, il y a un truc que je ne dois pas voir ... la doc dit à un endroit que le critère {recherche} ne marche que sur les boucles articles brèves et rubriques et forums (Les boucles et balises de recherche - SPIP) et donc pas mots ?

Pierre

--
Pierre