Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les tutoriels > Non-Officiels > Bureautique > Divers > Créer un plugin OpenSearch > Lecture du tutoriel

Créer un plugin OpenSearch

Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Avatar
Auteur : le_stoppeur
Note : Pas de note

Plus d'informations Plus d'informations
Bonjour à tous. :)

Ce tuto vous expliquera comment créer un plugin OpenSearch.

Un plugin OpenSearch est, comme son nom l'indique, un plugin de recherche. Ces plugins fonctionnent non seulement sur Firefox 2.0, mais aussi sur Internet Explorer 7, ce qui leur garantit une compatibilité avec les navigateurs les plus utilisés.
Un plugin OpenSearch se présente souvent sous la forme d'un moteur de recherche dans la barre de recherche présente à droite de la barre d'adresse.

Par exemple, sur Firefox, les moteurs de recherche présents par défaut sont :
Tenez, je vous offre même un screen ! :D

Image utilisateur

Nous allons donc apprendre à créer un de ces moteurs de recherche, qui sont basés sur la technologie OpenSearch.
Contrairement aux premières impressions que l'on peut avoir, ça n'a absolument rien de compliqué, il vous faut (et encore :p ) quelques connaissances en XML, et c'est parti !
Sommaire du chapitre :
Icône du chapitre

Quelques précisions

Le Site Web



J'espère pour vous que vous ne comptez pas apprendre à créer un plugin de recherche pour rien ! Cet outil est présent parce qu'il est pratique, et c'est pourquoi je vais m'efforcer dans ce tuto de lier l'utile et l'apprentissage : il va donc falloir choisir un site pour tester notre plugin.
Image utilisateur

Le site web pour lequel nous allons créer un plugin de recherche pour Firefox n'est autre que... le fameux Site du ZérO !
Le module de recherche ayant été rétabli récemment, et, semble t-il, pour de bon, il est normal que le site se dote d'un plugin de recherche, et si cela vous permet en plus d'apprendre comment faire, tout est bon ! :D

Les plus perspicaces d'entre vous auront peut-être remarqué que le Site du Zér0 possède déjà un plugin du genre. Cependant, j'ai trouvé pédagogiquement qu'utiliser comme exemple le site même était une bonne méthode. :)

OpenSearch



OpenSearch est une technologie qui se base sur les flux RSS et le XML. Elle permet, entre autres et c'est qui nous intéresse, d'intégrer des moteurs de recherches directement dans des navigateurs.
Cette technologie a été rendue publique et finalisée en mars 2005, ce qui lui a permis d'être intégré par les deux principaux navigateurs du marché, à savoir Internet Explorer 7 et Firefox 2.0.

Nous allons cependant, dans ce tuto, nous attarder un peu sur le cas de Firefox, qui peut intégrer des fonctionnalités supplémentaires bien utiles. ;)

Avant l'apparition de OpenSearch, Internet Explorer 6 n'intégrait pas de moteur de recherche directement dans son navigateur, et en créer pour Firefox était (relativement) compliqué.


Le vif du sujet

Comme je vous l'avais promis, créer un plugin OpenSearch est relativement simple.
Voici le code qui va nous suivre durant le reste du tuto :


Tout ce que nous allons faire, c'est remplir les champs (= ce qui se trouve entre les différentes balises) dont nous avons besoin et les adapter.

Ce code est le code "minimum" qui doit être rempli pour tout plugin OpenSearch.
Bien entendu, il existe des attributs que l'on peut rajouter, nous verrons ça dans la partie suivante. :)


Pour le Site du Zéro



Allons-y, adaptons ce code pour le Site du Zér0 !

ShortName



Ce doit être un nom qui caractérise votre plugin de recherche, il se doit d'être assez court.
Pour nous, "Site du Zéro" suffira :
Code : XML
1
<ShortName>Site Du Zero</ShortName>


Description



Une description du plugin de recherche. Voici ce que je vous propose : Citation : Description
Faites une recherche sur le Site du Zéro !

Ce qui donne :
Code : XML
1
<Description>Recherchez sur le Site Du Zero !</Description>


InputEncoding



L'encodage à utiliser pour transmettre votre recherche au moteur de recherche.
Pour le Site du Zér0, il s'agit d'un encodage en ISO-8859-1 :
Code : XML
1
<InputEncoding>ISO-8859-1</InputEncoding>


Image



C'est l'icône qui représentera votre plugin.
Il est fortement conseillé d'en inclure deux : une de taille 16 px * 16 px et une de taille 64 px * 64 px, la seconde état facultative (c'est de la 16 px * 16 px dont on va avoir le plus besoin).

Mis à part la hauteur et la largeur (height et width), l'autre élément susceptible d'être modifié est "type". Par habitude, les deux types d'image que l'on utilise sont :
Voici le code désiré pour l'image :
Code : XML
1
2
<Image height="16" width="16" type="image/x-icon">http://www.siteduzero.xom/Templates/images/designs/1/favicon.ico</Image>
 <Image height="64" width="64" type="image/x-icon">http://www.siteduzero.xom/Templates/images/designs/1/favicon.ico</Image>


Url



C'est le point le plus important : c'est avec cet attribut que vous allez indiquer le moteur de recherche sur lequel se basera le plugin OpenSearch.

Cette balise comporte deux attributs, method et template :
Pour le Site du Zér0, voici ce qui convient : Code : XML
1
<Url type="text/html" method="GET"  template="http://www.siteduzero.com/recherche.html?src={searchTerms}&amp;c=6"/>

La méthode utilisée est GET, et l'url de la recherche globale est http://www.siteduzero.com/recherche.html?src={Termesrecherchés}&amp;c=6, ce qui donne le code du dessus.
Mais chez moi, c'est GET ou POST ?

Vous vous demandez peut-être quel est le type de la requête pour envoyer des données chez vous.
C'est très simple, il suffit de faire une recherche et de regarder où l'url mène.

Soit l'url obtenue est du style http://www.siteduzero.com/recherche.ht [...] syPHP&amp;c=6 (recherche sur EasyPHP), les termes recherchés apparaissent dans la barre d'adresse, il s'agit d'une requête GET.
Au contraire, si les termes recherchés n'apparaissent pas dans l'URL, il s'agit d'une requête POST.
  • Le plus souvent, les requêtes sont de type GET.
  • Internet Explorer 7 ne gère pas les requêtes POST.

Pour finir



Et voilà, le code que nous obtenons est le suivant :
Code : XML
1

C'est le code minimal pour un plugin OpenSearch : tous les éléments ont été détaillés, vous ne devriez normalement avoir aucun mal pour créer le vôtre !

Bien entendu, le plugin peut être plus évolué, c'est ce que nous allons voir maintenant.

Mais encore ?

Il est possible d'étoffer encore plus son plugin, en rajoutant de nombreuses options et informations.
Nous allons voir dans cette partie quelques-uns de ces éléments additionnels.

Les éléments additionnels



AdultContent

Code : XML
1
<AdultContent>false</AdultContent>

Très explicite, il permet d'indiquer au moteur de recherche si votre site possède un contenu réservé aux adultes. Deux réponses sont possibles, true et false (vrai ou faux).
Généralement, la bonne valeur à indiquer est false. ( :-° )

moz:SearchForm

L'URL d'accès direct à la page de recherche du site sur lequel le plugin fait ses recherches. Elle donne la possibilité à Firefox de permettre à l'utilisateur de visiter directement le site Web.
Cet élément ne fait pas partie des spécifications d'OpenSearch: il est spécifique à Firefox, d'où le "moz:" au début de la balise.

Code : XML
1
<moz:SearchForm>http://monsite.com/recherche.html</moz:SearchForm>

Pour le Site du Zér0 par exemple, la page en question est : http://www.siteduzero.com/recherche-405.html.

Language

C'est le langage de votre plugin, tout simplement. :)
Code : XML
1
<Language>fr</Language>


Contact

Une adresse e-mail pour qu'on puisse contacter quelqu'un qui puisse modifier le plugin.
Code : XML
1
<Contact>webmaster@siteduzero.com</Contact>


LongName

Un nom un peu plus long pour votre plugin : c'est la version longue de <ShortName> que l'on a vue plus haut. Elle fonctionne de la même façon :
Code : XML
1
<LongName>Le Site du Zéro : On apprend tout à partir de zéro</LongName>


Developer

C'est l'occasion de vous remercier. :)
Cette balise contient le nom de la personne qui a créé ce plugin.
Code : XML
1
<Developer>Mehdi</Developer>


Attribution

C'est une balise qui n'est pas souvent utilisée car superflue, mais il peut être intéressant de connaître son existence. Il s'agit en fait du copyright de votre plugin, la licence qui le gère.
Code : XML
1
<Attribution>Copyright © Simple IT SARL</Attribution>


Tags

C'est une balise qui définit en fait des mots-clés pour votre plugin.
Code : XML
1
<Tags>SdZ xHTML CSS PHP Mapping C/C++ OpenGL Linux débutants</Tags>


Notre plugin au complet



Voici le code que nous possédions déjà :



Maintenant, rajoutons les éléments que nous avons découverts dans cette partie. Nous obtenons :



C'est quand même plus complet ainsi, non ?
Bien entendu, vous n'êtes pas forcés d'utiliser toutes ces balises, juste celles qui vous intéressent ! ;)

L'utiliser

Mais comment on fait pour l'installer ?

Bonne question, c'est précisément ce que nous allons voir dans cette partie ! (Quelle transition... :-° )

C'est extrêmement simple : il suffit d'indiquer la présence de votre plugin dans le <head> de la page.
Par exemple, on trouve dans le <head> du SdZ cette ligne de code : Code : HTML
1
<link rel="search" type="application/opensearchdescription+xml" title="Site Du Zero" href="/Templates/xml/xpi/fr/siteduzero.xpi" />

Analysons un peu cette ligne, plus particulièrement les deux attributs qui devront être adaptés, title et href.

Quand Firefox détecte la présence de cette balise dans une page, l'icône de recherche devient bleue.
Voici ce que donne la présence d'une telle balise dans une page :

Image utilisateur


Et si vous cliquez sur l'icône, voici le menu qui peut s'afficher :

Image utilisateur

Ensuite, il vous suffit de cliquer sur Ajouter "Nom du Site" pour qu'il soit ajouté.
C'est pas beau ?

En bonus

Voici deux petites astuces qui pourront vous faciliter la vie !

Et voilà, vous êtes maintenant capables de créer un plugin OpenSearch pour votre propre site ! ;)
Retour en haut Retour en haut


Créé : le 10/02/2007 à 00:05:46
Modifié : Aujourd'hui à 18:29:57
Avancement : 0%
Nb de visites : 8553
Licence : Copie non autorisée

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | Fil RSS | XHTML 1.0 | CSS 2.0
Édité par Simple IT SARL : Nous contacter | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 295 Zéros connectés | Requêtes SQL 9 requêtes | Temps de génération de la page : Total (SQL) 0.1253s (0.1093s)