RootsLabs

More than a tool ! GitHub Google+ LinkedIn RSS

Proposer un plugin de recherche sur son site

Progi1984 - Commentaires (1)

Votre site est en place depuis un moment. Vous avez un moteur de recherche en place. Et si vous proposiez un plugin de recherche, comme le fait PHP.net ou Wikipedia ? Grâce à cette article, vous allez comprendre comment le mettre en place au niveau du serveur et de votre page Web, ainsi que l’autocomplétion des résultats de recherche.

Exemple de plugin de recherche

Créer le plugin de recherche

Le plugin de recherche se présente sous la forme d’un fichier XML.

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
    <ShortName>Nom court</ShortName>
    <Description>Recherche sur le site</Description>
    <Url type="text/html" method="get" template="http://domain.tld/search?q={searchTerms}"/>
    <Image width="16" height="16">http://domain.tld/favicon.ico</Image>
    <InputEncoding>UTF-8</InputEncoding>
    <moz:SearchForm>http://domain.tld/search</moz:SearchForm>
</OpenSearchDescription>

Le tag racine est OpenSearchDescription.
Les tags enfants sont :

  • ShortName : Nom court du site ;
  • Description : Description relative au plugin ;
  • Url : l’URL pour la recherche avec le type MIME de la ressource à envoyer, l’URL à interroger ainsi la méthode (GET/POST) ;
  • Image : l’image représentant le site (ico, jpeg et png)
  • InputEncoding : l’encodage du texte à envoyer
  • moz:SearchForm : l’URL de la page de recherche du site

Permettre l’auto-complétion au niveau du plugin

Mais un plugin de recherche installé peut proposer diverses suggestions de mots-clés, en fonction de la saisie.
Ainsi, en tapant « Pa », on aurait comme : Paris, Patissier ou Payen. Maintenant comment le mettre en place ?
Tout simplement en rajoutant un tag Url :

<Url type="application/x-suggestions+json" method="get" template="http://domain.tld/suggest/{searchTerms}"/>

Le serveur doit alors retour un JSON avec comme en-tête « Content-Type » : application/json.
Le JSON retourné doit être du type :

["term", ["Terminal","Terminator","Thermomix","Termite"]]

La première clé du tableau est la valeur recherchée.
La seconde clé du tableau est un tableau contenant les suggestions de recherche lié à la valeur recherché.

Proposer le plugin sur son site

Maintenant que le plugin est prêt, vous pouvez le proposer sur votre site.
Pour cela, il faut rajouter dans l’en-tête de votre fichier HTML (<head>) :

<link rel="search" type="application/opensearchdescription+xml" href="http://domain.tld/opensearch.xml" title="Titre">

Lien : MDN : Créer des plugins OpenSearch pour Firefox
Lien : MDN : Supporter les suggestions dans les plugins de recherche

Commentaires

1. Proposer un plugin de recherche sur son site | ..., le 24 mars 2014 à 11:46

[…] Avec un site en place et son moteur de recherche, vous pouvez fournir facilement un plugin de recherche avec suggestions des résultats. Mais comment faire ?  […]

Ajouter un commentaire

Commentaire :