Google XXL: Créer un accélérateur pour IE 8
Google XXL

Créer un accélérateur pour IE 8

Utiliser les accélérateurs avec Internet Explorer 8

Les accélérateurs pour Internet Explorer 8


La galerie des accélérateurs pour Internet Explorer 8 est accessible à cette adresse : http://www.ieaddons.com/en/accelerators.
Nous avons déjà expliqué le fonctionnement des accélérateurs pour IE8. Nous allons maintenant voir comment créer un accélérateur de toute pièce.
Le principe est de créer un fichier XML.
Afin d'installer un accélérateur sur votre site web, vous devez utiliser une méthode appelée AddService. La syntaxe est celle-ci : window.external.AddService(URL).

Les variables utilisées dans le fichier XML


Les variables suivantes sont autorisées :
{documentUrl} : l'attribut href du document ;
{documentTitle} : le titre du document ;
{documentDomain} : les domaines de second niveau ;
{documentHost} : les domaines pleinement qualifiés ;
{selection} : le texte actuellement sélectionné ;
{link} : l'attribut href du lien sélectionné ;
{linkText} : la propriété innerText du lien sélectionné ;
{linkRel} : la propriété rel du lien sélectionné ;
{linkType} : le type du lien sélectionné ;
{linkDomain} : le domaine de second niveau du lien en href ;
{linkHost} : le domaine pleinement qualifié du lien en href.
Les noms de variables seront toujours placées entre deux accolades.
Ajoutez un point d'interrogation après un nom de variable afin d'indiquer qu'elle est optionnelle : {documentTitle?}.

Voici un exemple de fichier XML qui est celui utilisé par Live Maps :
<?xml version="1.0" encoding="UTF-8"?>
<openServiceDescription xmlns="http://www.microsoft.com/schemas/openservicedescription/1.0">
<homepageUrl>http://maps.live.com</homepageUrl>
<display>
<name>Map with Windows Live</name>
<icon>http://www.live.com/favicon.ico</icon>
</display>
<activity category="map">
<activityAction context="selection">
<preview action= "http://maps.live.com/geotager.aspx">
<parameter name="b" value="{selection}"/>
<parameter name="clean" value="true"/>
<parameter name="w" value="320"/>
<parameter name="h" value="240"/>
</preview>
<execute action="http://maps.live.com/default.aspx">
<parameter name="where1" value="{selection}" type="text" />
</execute>
</activityAction>
</activity>
</openServiceDescription>

Et voici un exemple du bouton d'appel vers le fichier que vous devez insérer à l'endroit voulu sur votre site web ou votre blog :

<button onclick="javascript:window.external.addService('test.xml')">Ajouter cet accélérateur</button>

Envoyez les deux fichiers sur un serveur puis procédez à un test en affichant la page contenant le bouton.
Cliquez dessus puis confirmez l'ajout de votre accélérateur dans Internet Explorer 8.
Ouvrez une page web quelconque puis mettez en surbrillance une adresse ou un nom de lieu.
Vous voilà chaussez pour faire un pas de géant à travers le web.

Les éléments utilisés dans le fichier OpenService des accélérateurs


Sauf indication contraire, ces éléments sont obligatoires…

os:openServiceDescription : cet élément racine doit comporter cette déclaration : http://www.microsoft.com/schemas/openservicedescription/1.0.

os:homepageUrl : indique l'adresse URL principale du service.

os:display
: définit de quelle manière l'accélérateur sera affiché pour l'utilisateur (les éléments os:name et os:icon).

os:name : le nom de l'accélérateur tel qu'il apparaîtra dans le menu contextuel.

os:icon (optionnel) : indique l'adresse URL d'un fichier icône (de 16 pixels de côté).

os:description (optionnel) : fournit une description longue de votre accélérateur qui sera visible dans le module de gestion des accélérateurs.

os:activity : cet élément contiendra toute les fonctionnalités de votre accélérateur (ainsi que l'indication de la catégorie).

os:activityAction : définit le type d'interaction avec le service qui sera utilisé.
document : le document actuellement vu par l'internaute (toujours actif) ;
selection : le texte sélectionné ;
link : un lien.

os:preview (optionnel) : définit une fenêtre de visualisation quand l'utilisateur, survole à l'aide de la souris, l'accélérateur. Cet élément utilise les mêmes attributs que "os:execute".

os:execute : définit l'action qui se déclenchera quand l'utilisateur se servira de l'accélérateur.

os:parameter (optionnel) : permet de fournir une manière différente d'accéder aux données.

Créer un accélérateur dédié à un site en particulier


Du coup, on peut imaginer un Webslice qui nous permet de chercher dans un Digg-Like comme Tutmarks. Voici un exemple rapide du fichier XML et du code pour le bouton correspondant :

<?xml version="1.0" encoding="UTF-8" ?>
<os:openServiceDescription xmlns:os="http://www.microsoft.com/schemas/openservicedescription/1.0">
<os:homepageUrl>http://tutmarks.com/</os:homepageUrl>
<os:display>
<os:name>Tutmarks</os:name>
<os:description>Rechercher dans Tutmarks.</os:description>
</os:display>
<os:activity category="Search">
<os:activityAction context="selection">
<os:execute action="http://tutmarks.com/?search={selection}" method="get" />
</os:activityAction>
</os:activity>
</os:openServiceDescription>

<button onclick="javascript:window.external.addService('test1.xml')">Rechercher dans Tutmarks</button>

Bien entendu, vous pouvez aussi créer un accélérateur qui reprend les résultats de votre moteur de recherche personnalisé. Afin d'obtenir plus d'informations sur les accélérateurs, consultez la documentation que consacre MSDN sur ce sujet : http://msdn.microsoft.com/en-us/library/cc289775(VS.85).aspx. J'oubliais le plus important : le lien vers un accélérateur TinyUrl : http://timheuer.com/tinyurl.xml. Indispensable !

2 commentaires:

  Anonyme

1 mai 2010 à 11:10

aaaaaaaaaaaa

  Jean-Noël Anderruthy

1 mai 2010 à 11:56

Anonyme : merci pour ce commentaire à la fois constructif et particulièrement explicatif :-)