Prendre en compte un nouveau champ dans les recherches

Si vous avez créé un nouveau champ dans une table SPIP, il n’est pas pris en compte par défaut dans les recherches. Il faut le déclarer aussi pour cela. Le pipeline rechercher_liste_des_champs est ce qu’il vous faut, appelé dans le fichier ecrire/inc/rechercher.php

Il reçoit un tableau table/champ = coefficient, le coefficient étant un nombre donnant des points de résultats à la recherche. Plus le coefficient est élevé, plus le champ donnera des points de recherches si le contenu recherché est trouvé dedans.

Exemple

Vous avez un champ "ville" dans la table SQL "spip_articles" que vous souhaitez prendre en compte ? Il faut ajouter la déclaration du pipeline, puis :

function prefixPlugin_rechercher_liste_des_champs($tables){
    $tables['article']['ville'] = 3;
    return $tables;
}

Auteur Matthieu Marcillaud Publié le : Mis à jour : 12/05/17

Traductions : English, français