mercredi 12 novembre 2014

WordPress : Filtrer les commentaires en amont pour éviter le spam

Si vous utilisez les commentaires sur votre site tournant sous WordPress, vous avez sûrement déjà été confronté aux commentaires indésirables.
Ces commentaires sont la plupart du temps envoyés par des robots nous ventant la qualité de leurs pilules amaigrissantes ou revigorantes, de leurs sacs à mains ou autres montres de grandes marques... bref, ces commentaires n'ont rien à faire sur votre site !
WordPress : Filtrer les commentaires en amont pour éviter le spam
Voici un petit bout de code PHP à placer dans le fichier functions.php de votre thème qui va "pré-filtrer" les commentaires postés sur votre site afin de vérifier si il s'agit ou non d'un spam.

Les spammeurs utilisent souvent une URL comme nom d'utilisateur. Le petit bout de code ci-dessous va vérifier la longueur du nom d'utilisateur afin de vérifier s'il s'agit d'une potentielle URL. Si c'est le cas, le commentaire sera classé automatiquement dans les spams.

Voici le le code à intégrer :

add_filter( 'pre_comment_approved', 'am_check_spam_comment', 99, 2 );
function am_check_spam_comment( $approved, $commentdata ) {
    return ( strlen( $commentdata['comment_author'] ) > 75 ) ? 'spam' : $approved;
}


Dans l'exemple ci-dessus, on vérifie si le nom d'utilisateur dépasse les 75 caractères, si c'est le cas, direction les spams.
Vous pouvez, bien évidemment, modifier ce code afin de filtrer les commentaires selon un nombre de caractères différent.

Ce code est inspiré par la fonction de norcross, qui se base sur la longueur de l'URL fournie par l'auteur du commentaire : https://gist.github.com/norcross/5468979

Il ne s'agit pas là d'une solution miracle, mais cela peut constituer une aide bien appréciable.

vendredi 7 novembre 2014

WordPress : Encoder son adresse mail pour éviter le spam

Voici une petite astuce qui vous permettra d'afficher votre adresse mail sur votre site internet tournant sous WordPress sans craindre de vous faire spammer.

Il vous suffit de placer dans votre thème le code PHP ci-dessous :

<?php

echo antispambot( 'john.doe@mysite.com' );

?>


Votre adresse mail sera encodée dans le code source de votre site mais sera bien affichée par les navigateurs.
Voici à quoi ressemblera votre adresse mail dans le code source de votre page :

jo&#104;&#110;&#46;&#100;&#111;&#101;&#64;&#109;&#121;s&#105;&#116;&#101;&#46;&#99;&#111;m

Si vous souhaitez l'intégrer dans un lien mailto:vous pouvez utiliser le code ci-dessous:

<a href="mailto:<?php echo antispambot( 'john.doe@mysite.com' ); ?>"><?php echo antispambot( 'john.doe@mysite.com' ); ?></a>

Ce bout de code est à placer à l'endroit où vous souhaitez faire apparaître votre adresse mail.

N'oubliez pas de remplacer john.doe@mysite.com par votre adresse mail !

Pour en savoir plus sur cette fonction, je vous conseille de faire un tour sur le Codex de WordPress :

http://codex.wordpress.org/Function_Reference/antispambot

dimanche 29 décembre 2013

Genericons - Des icônes sous forme de police pour votre site

J'aimerai vous faire découvrir Genericons, un set d'icônes pour vos pages web qui a l'énorme avantage de se présenter sous forme de police.

Ce fantastique set d'icônes a été créé par l'équipe Automatic, déjà célèbre pour le développement de WordPress (entre autres) et peut-être utilisé pour n'importe quel type de projet web.


Pourquoi utiliser une police pour afficher des icônes sur mon site ?

  • Leur intégration est très simple, elle se fait grâce à quelques lignes de code (HTML et CSS) sans faire appel à aucune image.
  • Fini le casse-tête que peut être la création de sprites CSS (si vous ne connaissez pas les sprites, voici un lien intéressant : les sprites CSS).
  • Les icônes peuvent être affichées à différentes tailles sans perte de qualité et sans se soucier de leur poids.
  • Les icônes sont "customisables" très facilement grâce à quelques lignes de CSS comme tout élément textuel (ombres, couleur, rotation, transparence...).
  • Les icônes sous forme de polices sont compatibles avec tous les navigateurs (même les vieilles versions d'IE).
  • Les polices d'icônes sont économes en poids et en requêtes HTTP (un seul fichier de quelques ko est appelé pour afficher les icônes. 

Voici une petite démo des possibilités offertes par ce type d'icônes : Icon Fonts are Awesome

Comment intégrer Genericons à mon site ?
  1. Téléchargez Genericons.
  2. Uploadez le répertoire font sur votre serveur (vous pouvez le renommer ou l'inclure dans un autre répertoire).
  3. Copiez le contenu du fichier genericons.css dans votre feuille de style CSS (si vous avez modifié le nom ou le chemin du répertoire font, n'oubliez pas de répercuter ces changements dans votre feuille de style).
Vous êtes à présent prêts à utiliser vos icônes sur votre site.

L'intégration est très simple, il vous suffit d'ajouter deux classes CSS aux éléments HTML concernés, genericon et genericon-{icon-name}.

<a href="http://mondomaine.com" class="genericon genericon-link">Mon lien</a>


Vous pouvez également utiliser les icônes dans des éléments HTML séparés grâce à la balise <i>.

<a href="http://mondomaine.com"><i class="genericon genericon-link"></i> Mon lien</a>

Vous trouverez la liste des noms des icônes dans le fichier genericons.css ou sur le site genericons.com, en cliquant sur une icône vous affichez son nom.

Bon code à tous ;)