Login

Encode emails as URIs

Author:
fahhem
Posted:
August 18, 2010
Language:
Python
Version:
1.2
Tags:
templatetag email spam encode
Score:
1 (after 1 ratings)

Put this snippet in a file in a templatetags/ directory and load it in your templates. Then use it to encode your emails:

{{"email@example.com"|html_encode_email}}

Or if you want some control over the anchor tag:

<a href="mailto:{{"email@example.com"|html_encode}}&subject=Feedback">Send Feedback</a>

From fahhem.com and Recrec Labs

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
from django import template

register = template.Library()

@register.filter
def html_encode(text):
    return ''.join(map(lambda c:'%%%x'%ord(c),text))
html_encode.is_safe=True

@register.filter
def html_encode_email(email):
    return '<a href="mailto:%s">%s</a>' % (html_encode(email),email)
html_encode_email.is_safe=True

More like this

  1. Hide Emails by epicserve 6 years, 6 months ago
  2. encode_mailto by santuri 8 years, 3 months ago
  3. hide_email by rukeba 7 years, 3 months ago
  4. filter for extracting a number of paragraphs from any HTML code by rafadev 4 years, 2 months ago
  5. better paginator template tag by amitu 6 years, 10 months ago

Comments

Please login first before commenting.