Beveilig e-mailadressen in WordPress tegen spam

Af en toe kom je tijdens het programmeren juweeltjes van code tegen. Kleine snippets of functies die je leven als programmeur zoveel makkelijker maken. Zo ook de interne WordPress-functie antispambot.

Spam-webcrawlers lezen het hele internet af op zoek naar e-mailadressen. Het is daarom een slechte gewoonte om e-mailadressen als platte tekst te plaatsen in je code. Een mailto-linkje is handig in gebruik, maar een potentieel gevaar om geïndexeerd te worden door spambots.

De oplossing hiervoor blijkt gewoon in WordPress te zitten. Wanneer je een link maakt in een template plaats deze dan zo:

<?php echo "<a href='mailto:" . antispambot("email@adres.ext") . "'>Stuur me een mail</a>"; ?>

De functie antispambot zet willekeurige letters en karakters uit het e-mailadres daarmee om naar de desbetreffende HTML-code. Hierdoor ontstaat er iets als: em&#97;&#105;&#108;&#64;&#97;dres&#46;ext wat door spambots niet geregistreerd zal worden als e-mailadres. Maar wanneer je op de link klikt zal de browser de HTML-code gewoon lezen als letters, en daarmee het juiste e-mailadres gebruiken om te mailen.

Geen verstand van code?

Geen probleem. Je kunt hetzelfde doen in de tekst van een pagina door gebruik te maken van de plugin “Anti-spambot” (goeie naam).

Installeer de plugin en schakel bij het schrijven van je tekst over van “Visueel” naar “Tekst”.  Om bovenstaande link toe te voegen schrijf je:

[email linktext="Stuur me een mail"]email@adres.ext[/email]

Dus, zo doe je dat.