Pages enfant
  • Modifier la grille de recherche

Indexation d'un élément CDM dans un index déjà existant

Le comportement du moteur de recherche est défini par le fichier de configuration /properties/search-engine-config.cdmfr-XXX.xml.

Les paramètres du moteur de recherche définissent le nom des index utilisables dans une grille de recherche ainsi que la façon dont seront calculés ces index lors de la phase d'indexation des documents de formation.

Ce fichier est structuré en deux éléments principaux : folder et languages.

L'élément folder définit les règles d'indexation sur le dossier CDM.

L'élément languages est lui-même composé d'éléments language qui définissent le comportement de l'indexation en fonction de la langue

( = les mots “vides” et caractères spéciaux à ne pas prendre en compte et les index à référencer pour trier les résultats d'une recherche).

Association des valeurs saisies aux index

Par défaut, la recherche par mots-clés filtre sur l'ensemble des critères saisis :  le résultat de la recherche "histoire géographie" sera les mentions qui contiennent ces deux mots dans l'intitulé.

Cela se fait par la chaine d'interrogation définie dans le fichier stylesheets/commun/composants/rechercheAvancee.cdmfr.xsl

<input type="hidden" name="__5" value="__{$_intitule}_pt_AND"/>

[...]

<!-- Mots-clés -->

<div class="ligne_form">

   <label for="__{$_intitule}_pt_AND"><xsl:call-template name="get-rub"><xsl:with-param name="rub">56</xsl:with-param></xsl:call-template></label>

    <input  class="entree" size="24" name="__{$_intitule}_pt_AND" type="text">

[...]

 

Il est néanmoins possible de filtrer sur seulement l’un des mots clés saisis par l'utilisateur.

Il suffit de remplacer l'opérateur AND par OR.

Ainsi, la recherche "histoire géographie" ramènera l'ensemble des mentions comportant "histoire" ou "géographie" dans son intitulé.

Structure de la chaîne d'interrogation

Une chaîne d'interrogation doit correspondre aux règles de nommage suivantes : Tous les paramètres utilisés pour la conception d'une grille de recherche commencent par deux caractères “_”.

Tous les paramètres utilisés pour structurer la chaîne d'interrogation commencent par deux "_" puis un nombre dont la valeur sert à ordonner les éléments de la chaîne d'interrogation.

Le premier nombre est 1 donc le paramètre se nomme "__1". Le caractère "." est utilisé pour combiner des opérations élémentaires entre elles (ouverture d'un nouveau niveau).

Ainsi si l'on veut écrire : a or ( b and not c) or d on doit construire les huit paramètres suivants :

  * "__1" valeur = "__a"

  * "__2" valeur = "or"

  * "__3.1" valeur = "__b"

  * "__3.2" valeur = "and"

  * "__3.3" valeur = "not"

  * "__3.4" valeur = "__c"

  * "__4" valeur = "or"

  * "__5" valeur = "__d"

Ces paramètres peuvent être transmis dans les champs de type “hidden” d'un formulaire HTML, tel que c'est le cas d'un le fichier stylesheets/commun/composants/rechercheAvancee.cdmfr.xsl

 

 

  • Aucune étiquette