Bonjour,
Suite à vos remarques concernant l’article Crypter du texte, un email, une URL, j’ai bricolé une nouveau filtre pour crypter les emails non plus isolés mais inclus au dans le corps du texte des articles ou autres éléments d’un site SPIP.
Par soucis de clarté dans les noms, l’ancienne fonction qui fonctionne seulement sur les mails isolés a été renommée, la voici à nouveau présentée.
Crypter un mail isolé
function cryptemail($textemail)
{
$s="";
for ($i=0;$i<strlen($textemail);$i++) {
$s.="&#".ord($textemail{$i}).";";
}
return $s;
}
Exemple d’usage
<a href="mailto:[(#EMAIL|cryptemail)]">Ecrire à l'auteur</a>
Crypter les adresses emails intégrées dans des textes
Cette nouvelle fonctionnalité utilise un nouveau filtre cryptemail_txt.
function cryptemail_txt($texte) {
while (strpos($texte,"mailto:") > 0) {
$debemail = strpos($texte,"mailto:");
$finemail = strpos($texte,'"',$debemail);
$finemail2 = strpos($texte,'?',$debemail); // test la fin de l'adresse et le début des paramètres
if ($finemail2 > 1){
$finemail = min($finemail,$finemail2);
}
$textemail = substr($texte,$debemail,$finemail-$debemail);
$s= cryptemail($textemail);
$texte = ereg_replace($textemail, $s, $texte);
}
return $texte;
}
Comment fonctionne-t-il ?
Il recherche la chaine « mailto: » et crypte tout ce qui suit jusqu’au premier ".
Comment l’utiliser ?
- Copiez-collez les 2 extraits de code ci-dessus dans votre fichier mes_fonctions.php3 (entre une balise
<?php
et une balise?>
).
- Dans votre squelette, utilisez le filtre de la manière suivante :(#TEXTE
Exemple d’usage
(#TEXTE par (#LESAUTEURS
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
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.
Suivre les commentaires : |