Cette première version du plugin, toujours fonctionnelle en SPIP 2, n’est plus maintenue car remplacée par cette nouvelle version : « Liens explicites ».
Avertissement : ouvrir une nouvelle fenêtre, c’est nul !
N’utilisez ce plugin que sous la contrainte, car forcer l’ouverture des liens dans une nouvelle fenêtre est une mauvaise pratique qui, contrairement à l’idée reçue, incommode les internautes et dégrade le confort d’utilisation de votre site [1]. Il n’y a en effet aucune bonne raison d’utiliser ce plugin qui n’existe que pour répondre à la demande impérieuse de certains commanditaires mal informés [2].
Concrètement, que fait ce plugin ?
Ce plugin vient s’ajouter à la longue liste des contributions à SPIP visant à forcer l’ouverture de liens dans une nouvelle fenêtre. Mais que fait-il de plus, de mieux ?
Première caractéristique, ce plugin ouvre tous les liens externes — et non pas seulement ceux distingués par le sélecteur SPIP spécifique .spip_out —, de façon à ne plus en oublier :
- Aussitôt activé, ce plugin ouvre TOUS les liens externes (commençant par
http://,https://,irc://,ftp, etc.) dans une nouvelle fenêtre, en ajoutant untarget="_blank"à ceux-ci, en JavaScript, ce qui a pour double avantage de laisser tranquille les internautes surfant sans JavaScript et de ne pas dégrader le code (X)HTML qui reste strictement valide [3]. - Il ajoute à ces liens l’attribut approprié
rel="external"[4] - et un sélecteur distinctif homonyme
class="external"de façon à permettre au webmestre de les cibler.
Seconde caractéristique, ce plugin signale clairement ce comportement :
- Ce plugin complète l’infobulle des liens externes par une mention textuelle explicite :
title="(nouvelle fenêtre)"[*] - et les distingue visuellement en les affublant d’un picto consensuel (une flèche inclinée à 45°), en CSS et affiche la langue du site cible lorsqu’elle est indiquée dans l’attribut
hreflang[*]. - Enfin, cerise sur le gâteau, il explicite ces liens à l’impression sur papier en ajoutant automatiquement l’URL du lien externe à la suite de son intitulé [*].
Personnalisations et recommandations
Si besoin, vous personnaliserez en surchargeant la règle CSS a.external { ... } (peut-être avec !important) dans votre feuille de style perso et en remplaçant le picto external.gif par un autre dans votre propre dossier squelettes, selon les règles de surcharge habituelles dans SPIP.
L’ouverture des liens dans une nouvelle fenêtre n’améliore pas l’accessibilité de votre site, bien au contraire. Ce plugin vous évite le pire mais sachez que les techniques qu’il emploie ne sont pas pour autant pleinement satisfaisantes, car CSS ou JavaScript ne sont pas disponibles sur certains agents utilisateurs (dont Internet Explorer). Retenez que pour bien faire, il faut signaler l’ouverture de nouvel par une mention textuelle explicite dans le lien, ou par un picto doté d’un alt, placé dans la page HTML, à l’intérieur du lien [5].



liens_sortants_ouvrants.zip
Vos commentaires
# Le 10 août 2009 à 10:08, par superyms
En réponse à : Liens sortants ouvrants
Bonjour, Romy,
Cette contrib m’intrigue...en effet tu conseilles toi même de ne pas l’utiliser ! lol (je comprends que des spipeurs puisse l’utiliser !)
Perso, sur certains sites, selon la demande de l’utilisateur, je rajoute juste le code jquery suivant (ceci dit prévenir l’internaute que cest un lien ouvrant est pas mal aussi, tout depend de qui gère le site, y en a qui n’en veulent pas ! ) :
$(document).ready(function() {$("a[@href^=http]").each(
function(){
if(this.href.indexOf(location.hostname) == -1) {
$(this).attr('target', '_blank');
}
}
)
});
Cela fonctionne plutot bien...si cela peut aider ! (ce code ouvrira tous les liens externes du site dans une nouvelle fenêtre)
Romy à raison, méditerz bien l’utilisation d’un tel procédé ou d’une telle possibilité..l’internaute se perd facilement dans sa navigation !
@+
# Le 20 août 2010 à 09:41, par goetsu
En réponse à : Liens sortants ouvrants
Bonjour,
2 remarques pour améliorer le plugin :
<a href="http://www.yahoo.com"><img alt="yahoo.com"></a>l’information doit être ajoutée dans le alt de l’image et non dans le title du lien# Le 23 février 2011 à 12:34, par Z
En réponse à : Liens sortants ouvrants
Bonjour !
Bravo Tétue ! Je sais, pas top pour la bonne pratique, mais parfois, il y a des demandes.... qu’on ne peut contourner.
Juste un point qui m’embête : la remarque de Goestu juste au dessus, c’est exactement ce que je cherchais à modifier (sur le premier point), en principe, d’après les référentiels d’accessibilité, le title ne doit jamais comporter moins d’info que l’intitulé.
C’est à ce niveau-ci que ça se joue
$("a[href*='://']:not([href^="+liens_sortants_site+"])").attr('target',where)
.attr('rel','external')
.addClass('external')
.each(function(){
title = "(nouvelle fenêtre)";
if($(this).attr("title")) title = $(this).attr("title") + " (nouvelle fenêtre)";
$(this).attr("title",title);
});
Mais je ne vois pas bien comment récupérer l’intitulé du lien en JS, et le réinjecter l’attribut title...
Romy, t’aurais une idée ?
++
Z
Répondre à ce message
# Le 25 novembre 2010 à 18:34, par audwill
En réponse à : Liens sortants ouvrants
Bonjour,
Comment faire en sorte que ce comportement (ouverture nouvelle fenêtre) s’applique aux redirections (articles virtuels) ? Je m’explique : les rédacteurs d’un site A veulent référencer un article publié sur un site B. Il créent un article dans leur site A et renseignent l’adresse http://ww.... de l’article du site B dans le champ « redirection » de spip. Il s’agit donc bien d’une url http://... mais elle ne s’ouvre pas dans une nouvelle fenêtre malgré la présence du plugin...
merci d’avance pour vos conseils,
# Le 25 novembre 2010 à 18:43, par tetue
En réponse à : Liens sortants ouvrants
Je n’utilise plus les articles virtuels et les déconseille, pour ce genre de raison, entre X autres, mais de mémoire il s’agit bien d’un lien interne et non externe (
http://...). Où peut-on voir cela ?# Le 26 novembre 2010 à 12:51, par audwill
En réponse à : Liens sortants ouvrants
merci pour ta réponse rapide !
c’est ici : http://www.metropolitiques.eu (site mis en ligne ce matin...)
dans la colonne de droite, bloc"articles les plus lus", cf l’article « les apories de la ville durable » qui est un article virtuel qui renvoie vers un autre site - pour le moment pas en target=_blank malheureusement...
dans le squelette j’utilise un simple #URL_ARTICLE...
# Le 26 novembre 2010 à 13:30, par tetue
En réponse à : Liens sortants ouvrants
Oui, c’est bien ce que je craignais : SPIP génère un lien interne, du style
a href="toto.html", qui échappe donc à ce plugin qui ne traite que les liens externes.Je ne saurais que recommander d’éviter ces « articles virtuels » qui posent d’autres problèmes en étant présentés exactement comme des articles internes (en ressortant par exemple au même niveau dans les résultats de recherche dans le site) et sont extrêmement déroutants pour l’internaute.
Répondre à ce message