Codeur d’adresses email

Ce plugin encode en javascript les raccourcis SPIP de liens email contre les robots collecteurs d’adresses email (souvent appelés aussi spambots [1]) et qui constituent des bases de données de ces adresses en vue de faire du spam. Si le robot tente de suivre le lien, il sera bloqué par un captcha arithmétique [2] obligatoire pour le décodage.

Pour Spip 2.1, 3.0, c’est par ici, maintenant : Codeur d’adresses email 2

Description

Il les encode, dans l’espace public comme dans l’espace privé, les raccourcis spip de ce type :
[nom_lien->mailto:user@domain.tld?parametre1=parametre1&parametre2=parametre2]

Si « nom_lien » est vide ou contient un « @ », il sera remplacé « Ecrire à user dans le nom de domaine domain.tld » (voir « Résultat du codage » ci-dessous).

Les paramètres doivent être alphanumériques. Ils peuvent aussi contenir l’espace, _ et -.
Si l’encodage UTF-8 est disponible, les caractères accentués sont autorisés.
Les signes : " ’ # $ ! et les caractères html étendus sont à proscrire.

Exemples


[Ecrire à user->mailto:user@domain.tld].
[Ecrire à user->mailto:user@domain.tld?subject=bonjour les copains&body=salut les copines&cc=user1@domain1.tld1]
[->mailto:user@domain.tld].
[user@domain.tld->mailto:user@domain.tld].

Résultat du codage

Avec le code spip [Ecrire à User->mailto:user@domain.tld], voici ce que sera le résultat sur le site public et ce que verrait le robot :
<a href="javascript:mdecode('dlt.niamod:resu');">Ecrire à User</a>

Avec le code spip [->mailto:prenom.nom@domain.tld?cc=user@domain1.tld], voici ce que sera le résultat sur le site public et ce que verrait le robot :
<a href="javascript:mdecode('dlt.1niamod:resu=cc!dlt.niamod:mon.monerp');">Ecrire à Prenom Nom, dans le domaine domain.tld</a>

Si le robot tente de suivre le lien et de le décoder via le DOM [3], il sera bloqué par un captcha arithmétique obligatoire pour le décodage.

Accessibilité

Si javascript est désactivé (comme c’est le cas pour les logiciels des malvoyants), le lien email est alors devenu inopérant. C’est pouquoi, dans ce cas, une DIV encadrée, en texte seul, sous le lien explique la démarche à suivre pour reconstruire l’adresse email. Dans le cas d’un lien comme [->mailto:prenom.nom@domain.tld], les choses ressembleront à ceci :
1) Le lien (devenu inopérant) :
Ecrire à Prenom Nom, dans le domaine domain.tld
2) Et en dessous, la DIV explicative encadrée :

Javascript est désactivé dans votre navigateur. Le lien email ci-dessus ne fonctionnera pas.
Veuillez reconstituer l’adresse email suivant le modèle
utilisateur(arobaz)domaine
Utilisateur : prenom.nom
Domaine : domain.tld

Cette DIV sous le lien est de classe « rspipcm_noscript » qui peut être redéfinie dans la feuille de style « rspip_code_mail/css/noscript.css » du plugin, ou dans tout autre feuille en surcharge.

Installation


Nouvelle
-  Charger le fichier xxx_rspip_code_mail.zip dans le répertoire plugins de votre site et le décompresser (ou le décompresser en local et télécharger les fichiers).
-  La balise spip #INSERT_HEAD doit être présente entre les balises html <head> ... </head> de vos squelettes.
-  Dans l’espace privé, activer le plugin.
-  (Eventuellement penser à vider le cache)

Mise à jour
-  Ecraser l’ancienne version par la nouvelle, en faisant attention à ceci : Si vous avez modifié la feuille de style css/noscript.css pour l’adapter à votre site, pensez à la sauvegarder avant l’installation, pour la restaurer ensuite.

Un plugin de cryptage d’adreses email de plus ?

Il existe d’autres contrib qui permettent le cryptage d’adresses email, comme :
-  la lame De beaux liens hypertexte (mailcrypt)
-  ou le Plugin antispam

Alors, pourquoi un de plus ? Au début, je pensais cela ou proposer une fusion de mon plugin avec un autre. Après réflexion, en ce qui concerne le cryptage d’adresses email, je conclus à l’intérêt de la multiplicité de ce type de plugin. En effet, plus il y a de codages divers, plus compliquée est la tâche des spambots.

Si vous gérez plusieurs sites, n’hésitez donc pas à diversifier vos modes de protection en choisissant des plugins différents. Attention tout de même à ceci : ne mélangez pas ces plugins sur un même site, ils ont de grandes chances de ne pas être compatibles, notamment que l’un prenne la précédence sur l’autre qui ne sert alors à rien.

Langues actuelles disponibles

fr, en, nl (à compléter).

Démo

Ils utilisent le codeur :
(SVP, n’envoyez pas d’email, ces adresses sont en fonction).
-  Hyperpaysages Lire et Ecrire Bruxelles
-  Confédération européenne des syndicats (CES)
Merci à Nicolas Inghels qui a signalé le bug des </p>, objet de la correction de la version 0.14

ToDo


-  Permettre la désactivation (/ activation) du captcha.

Téléchargement

Codeur d’adresses email
Version 0.14


Versions :

0.14
* Les versions précédentes ne géraient pas correctement les divers filtres appliqués par le moteur de spip. Ce qui provoquait d’inopportuns </p>. La présente version corrige ce défaut.

0.13
* Correction de la détection du chemin du plugin (qui ne voulait bien fonctionner qu’à la racine de /plugins)

0.12
* Accessibilité : Si javascript est désactivé, on affiche le moyen de reconstituer l’adresse email

0.11
* Codage du nom du lien si il contient une adresse email

0.10
* Version de base

Notes

[2Un captcha est une forme de test permettant de différencier de manière automatisée un utilisateur humain d’un robot. Ici, il est « arithmétique » car il consiste à demander au visiteur la réponse à une addition de 2 nombres (entre 1 et 5) http://fr.wikipedia.org/wiki/CAPTCHA

[3Document Object Model. Le DOM est une convention pour représenter et interagir avec les objets dans les documents HTML, XHTML et XML. Le DOM est aussi le chemin par lequel Javascript voit le contenu des pages HTML http://en.wikipedia.org/wiki/Docume...

Discussion

2 discussions

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom