CMS Automne

Forum de la communauté du CMS Automne
Nous sommes actuellement le Jeu Nov 14, 2024 7:29 am

Le fuseau horaire est UTC [Heure d’été]




Publier un nouveau sujet Répondre au sujet  [ 7 messages ] 
Auteur Message
MessagePublié: Jeu Août 19, 2010 2:01 pm 
Hors-ligne

Inscrit(e) le : Ven Juil 31, 2009 4:53 pm
Message(s) : 30
Bonjour,

Je suis en train de créer un formulaire de recherche par mot clés qui porte sur plusieurs champs d'un objet. Ces champs sont paramétrés pour être parcourus par un moteur de recherche. En fait je voudrais savoir si dans l'atm-if de mon atm-search qui traite le champ du mot clé, on pouvait préciser plusieurs atm-search-param pour tous les champs de l'objet que l'on veut tester ou s'il faut que je fasse plusieurs atm- search pour chaque champ.

Voici un extrait du code :

Code :
      <form id="id-module" action="{page:self:url}" method="get">
        <fieldset>
          <legend>Recherche</legend>
          <input type="hidden" name="action" value="search" />
          <p>
            <label for="keywords">Mots clé</label>
            <input type="text" name="keywords" id="keywords" value="{request:string:keywords}" />
          </p>
          <p>
            <input class="button" type="submit" value="Rechercher" />
          </p>
        </fieldset>
      </form>
     
      <atm-search what="{objet}" name="listes">
        <atm-if what="{request:string:keywords}">
          <atm-search-param search="listes" type="{objet:champ:fieldID}" value="{request:string:keywords}" mandatory="true" />
          <atm-search-param (...) /> [b]??? (possible?)[/b]
        </atm-if>

        <atm-result search="listes">
           ...
        </atm-result>
      </atm-search>

Tout cela sachant que j'ai d'autres champs dans le formulaire.


Haut
 Profil  
 
MessagePublié: Jeu Août 19, 2010 2:08 pm 
Hors-ligne
Administrateur
Avatar de l’utilisateur

Inscrit(e) le : Mer Juin 15, 2005 8:28 am
Message(s) : 759
Localisation : Sophia Antipolis
La recherche par mot clé relève d'un type d'atm-search-param spécifique :
Code :
<atm-search-param search="listes" type="keywords" value="{request:string:keywords}" mandatory="false" />


Ce code permet d'effectuer la recherche par mot clé sur l'ensemble des champs de l'objet pour lesquels la recherche par mot clé est active.

Ensuite, rien ne t'empêche d'ajouter des filtres de recherches supplémentaires pour les autres champs de ton formulaire.

Seb


Haut
 Profil  
 
MessagePublié: Jeu Août 19, 2010 2:19 pm 
Hors-ligne

Inscrit(e) le : Ven Juil 31, 2009 4:53 pm
Message(s) : 30
merci j'avais pas essayé ça. je pensais pas que ça venait de là. vous devriez rajouté ça dans la doc ou alors si ça y est j'avais mal compris.
merci en tout cas.


Haut
 Profil  
 
MessagePublié: Jeu Août 19, 2010 3:16 pm 
Hors-ligne

Inscrit(e) le : Ven Juil 31, 2009 4:53 pm
Message(s) : 30
J'ai essayé et ça ne fonctionne pas. Ca ne trouve même pas les valeur que je trouvais quand j'avais ça :
Code :
<atm-search-param search="listes" type="{objet:champ:fieldID}" value="{request:string:keywords}" mandatory="true" />


Pourtant j'ai activé la recherche par mots clés sur tous les champs de l'objet...


Haut
 Profil  
 
MessagePublié: Jeu Août 19, 2010 4:01 pm 
Hors-ligne
Administrateur
Avatar de l’utilisateur

Inscrit(e) le : Jeu Juin 16, 2005 8:05 am
Message(s) : 628
Localisation : Toulouse, France
Salut,

Pour qu'un champ de ton objet soient indexé dans le moteur de recherche, il faut que la case 'indexé dans le moteur de recherche' soit coché pour chaque objet.

La case 'ajouter au formulaire de recherche' ne concerne que l'interface d'administration du module et permet d'ajouter certains champs comme critère de tris.

Même chose pour 'Visible dans le moteur de recherche', ça ne concerne que l'interface d'administration du module.

Dans la documentation c'est sur la page Création/modification d'un champ :
Citer:
Ajouter au formulaire de recherche (ou effectuer la recherche par mot-clé sur ce champ) : Notez que ce champ possède 2 effets :
Permet d'effectuer une recherche sur le champ dans l'interface d'administration des éléments,
Si l'objet n'est pas défini comme étant indexé par le module « Moteur de recherche » (ASE, Automne Search Engine) : lors d'une recherche côté client, pour un paramètre de recherche de type « keywords » le champ sera recherché (à l'aide d'un « like %valeur% »).
Indexé dans le moteur de recherche : ce champ est uniquement disponible si l'objet est défini comme étant indexé par le module « Moteur de recherche » (ASE, Automne Search Engine). Si c'est le cas, le moteur de recherche indexera la valeur du champ lors de l'indexation de l'objet,
Visible dans les résultats d'une recherche : Affiche le champ et sa valeur dans la liste des résultats de l'interface d'administration des éléments.


Le code fourni par Sébastien doit marcher si tu as bien coché la case 'indexé' et que tes champs contiennent des valeurs.
Si tu as une URL d'accès ça serait plus simple pour t'aider.

Concernant la refonte de l'interface de gestion des modules, c'est une des demandes en attente dans la boîte à idées d'Automne, mais il n'y a pas encore eu de votes pour cette tâche.
http://www.automne.ws/web/fr/477-boite- ... php?id=548


Pièces jointes:
Description du fichier : Champs relatifs à l'indexation d'un objet dans le moteur de recherche
Capture d’écran 2010-08-19 à 16.32.21.png
Capture d’écran 2010-08-19 à 16.32.21.png [ 13.85 Kio | Consulté 32348 fois ]

_________________
Frank
http://www.automne-cms.org
Haut
 Profil  
 
MessagePublié: Jeu Août 19, 2010 4:05 pm 
Hors-ligne

Inscrit(e) le : Ven Juil 31, 2009 4:53 pm
Message(s) : 30
Ok ça marche je vais essayer ça alors


Haut
 Profil  
 
MessagePublié: Ven Août 20, 2010 11:17 am 
Hors-ligne

Inscrit(e) le : Ven Juil 31, 2009 4:53 pm
Message(s) : 30
Alors j'ai fait plusieurs essais et plusieurs combinaisons depuis hier et ça ne fonctionne toujours pas.
l'objet sur lequel je fais la recherche est indexé dans le moteur de recherche, les champs sur lesquels je fais la recherche aussi sont indexés.
j'ai défini dans le modèle de l'objet une page pour afficher les résultats de la recherche... je ne comprends donc pas d'où peut venir le soucis alors que tout va bien quand je fais le test sur un seul champ avec :
Code :
<atm-search-param search="listes" type="{objet:champ:fieldID}" value="{request:string:keywords}" mandatory="true" /> (quelque soit le champ)


Haut
 Profil  
 
Afficher les messages publiés depuis :  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 7 messages ] 

Le fuseau horaire est UTC [Heure d’été]


Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 57 invité(s)


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Recherche de:
Aller vers :  
Powered by phpBB® Forum Software © phpBB Group
Traduit par Maël Soucaze et Elglobo © phpBB.fr