Installer OpenSearch sur un site internet
Depuis Décembre dernier, skymac.org dispose d'un moteur de recherche interne au site. Pour aller un peu plus loin, je l'ai rendu compatible avec OpenSearch. Pour ceux qui se demandent, OpenSearch est une solution normalisée, qui permet de déclarer le moteur de recherche de son site afin qu'il soit accessible depuis la barre de recherche de son navigateur. Mieux, cela permet aussi à l'utilisateur d'ajouter votre moteur de recherche aux moteurs disponibles dans le navigateur, permettant au visiteur de revenir sur votre site directement depuis sa barre de recherche.
Installation
L'ajout d'OpenSearch est d'une simplicité enfantine, et ne prend réellement que 5 minutes.
Pour cela, votre site doit disposer d'un moteur de recherche dont le terme doit pouvoir être indiquer dans l'URL.
La première action est de créer un fichier XML avec les informations suivantes, ici celle de skymac.org
<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<ShortName>skymac.org Search</ShortName>
<Description>Rechercher un article sur skymac.org</Description>
<Image height="192" width="192" type="image/png">https://www.skymac.org/plugin/theme/skymacDesign/img/touchIcons/icon-192x192.png</Image>
<Url type="text/html" template="https://www.skymac.org/Recherche.htm?search={searchTerms}" />
</OpenSearchDescription>
Voyons le détail pour chacune des valeurs :
- ShortName : Nom court de votre moteur de recherche, il doit faire 16 caractères ou moins.
- Description : Description de votre moteur de recherche, elle doit faire 1024 caractères ou moins. Inutile d'insérer un pavé, un courte description de 30 à 50 caractères suffit, et ne fera pas peur aux éventuels visiteurs intéressés.
- Image : Icône descriptive de votre site avec sa taille
- Url : Adresse URL de votre moteur de recherche, le terme de recherche inséré par le visiteur remplacera la valeur {searchTerms}. Il est possible d'utiliser des requêtes JSON pour obtenir des suggestions, mais cela est un peu plus compliqué.
Le format OpenSearch est bien plus complexe que cela, et si vous avez besoin, voici la page descriptive complète.
Ce fichier est en général appelé OpenSearch.xml et est placé à la racine du site.
Ensuite pour indiquer la présence de ce fichier, un simple tag dans l'en-tête de vos pages permettra aux navigateurs de l'utiliser. Encore une fois, voici celui de skymac.org, à adapter selon votre site.
<link rel="search" href="https://www.skymac.org/OpenSearch.xml" type="application/opensearchdescription+xml" title="Rechercher un article sur skymac.org" />
Votre site ne dispose pas de moteur de recherche, mais vous souhaitez tout de même installer un raccourci OpenSearch ?
Pas de soucis, voici une petite astuce pour utiliser Google France comme moteur de recherche, il suffit pour cela d'indiquer l'url suivante, en remplaçant bien www.skymac.org par votre url : https://www.google.fr/search?&hl=fr&&q=site%3Awww.skymac.org+{searchTerms}
Et le tour est joué !
Compatibilité
Malheureusement, la fonctionnalité semble être passée de mode, et le support par les navigateurs s'amoindrit avec les années.
Firefox est le navigateur offrant le meilleur support à OpenSearch, sans plugins supplémentaire, et avec un affichage direct. Si le petit plus vert apparait dans la loupe de l'espace de recherche, c'est que le site est compatible OpenSearch, et que vous pouvez ajouter le moteur de recherche à vos favoris en cliquant sur la même loupe.
Chrome continue de supporter OpenSearch, mais ce n'est plus franchement affiché. Si vous êtes sur que le site dispose d'OpenSearch, il faut cliquer-droit dans la barre d'URL pour aller sur l'option "Modifier les moteurs de recherche..." et ajouter le site.
Safari ne l'a jamais supporté, mais un plugin permet de prendre en charge cette fonctionnalité. Une fois installé, une nouvelle icône viendra se mettre à coté de la barre d'URL afin d'enregistrer le site dans les moteurs de recherche, puis d'effectuer une recherche.
Opera semble ne pas vouloir gérer OpenSearch, certainement pour ne pas mettre à mal le contrat avec Google, défini comme moteur de recherche par défaut.