Super moteur de recherche

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Ce squelette permet d’avoir un moteur de recherche « à la ht ://dig », c’est-à-dire avec des pourcentages de pertinence et des pages multiples

... ©opyleft Adrien Poirot : Adrien Poirot

Discussion

17 discussions

  • 1

    Salut,

    Merci pour ce super moteur de recherche !!!
    Il marche parfaitement, il est clair et efficace.

    En 2 mots :
    Merci
    Bravo

    (implémenté sur un SPIP 1.7.2 fr)

    • Bonsoir,

      Pouvez vous nous monter comment intégrer ce script(emplacement:php ou html ?) et les fichiers concernés par ce changement.
      D’autre part j’ai un moteur qui fonctionne bien en local (easyphp 1.7) mais une fois le site en ligne, le moteur ne tourne plus.J’utilise spip 1.8.2 d
      Merci de me secourir

    Répondre à ce message

  • Merci beaucoup tres joli moteur dont vous pouvez voir ici la mise en pratique.

    Répondre à ce message

  • Dolphynious

    Bonjour,

    J’ai eu un problème avec cette astuce, qui permet de masquer des articles, entre autre dans les résultats d’une recherche. Or le super moteur de recherche, lui, dénombre tous les articles trouvés : il indiquera X articles trouvés mais en affichera X moins les Y articles éventuellement cachés. Plutôt que redoubler le critère {doublons} dans la boucle CountArticles, une simple soustraction peut faire l’affaire :

    <?
    $NbResults_mask = 0;
    $NbResults = 0; // initialisation du comptage
    $MaxPts = 0;?>
    
    <BOUCLE_articles_masquer(ARTICLES) {recherche} {titre_mot=masquer} {doublons}>
    <? $NbResults_mask++; // marque et dénombre les articles à cacher 
    ?>
    </BOUCLE_articles_masquer>
    
    <BOUCLE_CountArticles(ARTICLES){recherche}{par points}{inverse}>
    <?
    $NbResults++; // bête incrémentation (basique mais efficace)
    if ($MaxPts==0) $MaxPts = #POINTS; // ?>
    </BOUCLE_CountArticles>
    
    <?
    $NbResults-=$NbResults_mask;  // soustrait les articles cachés aux articles trouvés 
    ?>

     masquer » est le mot-clé utilisé pour cacher les articles. Reste à insérer le critère {doublons} dans la boucle articles pour ne pas afficher les articles cachés. Pour tout ça, cf ici)

    Répondre à ce message

  • c’est normal de n’obtenir ke du 100% a chake fois ??
    Fo attendre un peu ?

    Répondre à ce message

  • Super ! Merci :-)

    Pour les fanas de l’alignement des chiffres (dont moi...), vous pouvez remplacer

    < f o n t color=#666600>[

    <? echo number_format($PerCent, 0); ?>

     %] < / f o n t>

    par

    < f o n t color=#666600 face="Courier New, Courier, mono">[

    <? if (number_format($PerCent, 0) < 10)
    {
    echo "00"; 
    }else if (number_format($PerCent, 0) < 100){
    echo "0"; 
    }
    echo number_format($PerCent, 0); ?>

     %] < / f o n t >

    Les « 0 » peuvent être remplacés par des espaces insécables (& n b s p ;).

    Merci encore, Tjos

    Répondre à ce message

  • VALES Boris

    Je trouve ce script bien sympa en plus en changeant un peu le source on peut afficher les resultats pour les rubriques
    «  » tout simple et tout simplement merci

    Répondre à ce message

  • Est-il possible d’étendre la recherche dans les fichiers joints ?

    Répondre à ce message

  • 1
    oliviette

    Suite à la modification du moteur de recherche dans la version 1.6, j’ai remarqué que ce script ne marchait plus bien. En effet, lorsqu’il y a plusieures pages de résultat, la première marche bien, mais sur les suivantes, les liens se présentent tels qu’ils étaient dans les versions antérieures, c’est à dire avec le paramètre ?var_recherche=xxxxx à la suite de l’url ce qui à pour effet de rendre le lien inopérant.

    Voila, si quelqu’un est capable de corriger ce problème, moi je suis trop unconpétant pour cela.

    Bien amicalement,

    • Emmanuel Vivier (Creadrive)

      Bonjour pour régler ce problème qui apparaît à partir de la version 1.6 de spip,
      il suffit de remplacer ob_start (« ») par ob_start () dans inc_public_global.

    Répondre à ce message

  • 2

    pour un webmaster un peu blaireau ce serait possible ?

    Merci d’avance

    • Charles CHASSON

      J’essaye de mettre le formulaire avec bouton de cette page sur la page de garde mais il semble que cela ne marche pas.

      Que faut-il inserer exactement à la page « sommaire » pour que cela marche ?

      Amicalement

      Charles

    • Je me heurte au même problème ! La commande #FORMULAIRE_RECHERCHE ne passe pas...

      Mais je débute vraiment. Si qq’un à le temps de redonner tout ce qui est nécessaire au fonctionnement et à l’insertion du formulaire de rcherche... merci d’avance

    Répondre à ce message

  • Correction du code de la page :

    il faut mettre
    $MaxPage = ceil($NbResults/10) ;

    et non
    $MaxPage = floor($NbResults/10)+1 ;

    Sinon, avec 20 résultats, par exemple, on obtient 3 pages (or il en faut 2)

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom