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
- Mask sensitive data from logger by agusmakmun 1 week, 4 days ago
- Template tag - list punctuation for a list of items by shapiromatron 1 year, 2 months ago
- JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 1 year, 2 months ago
- Serializer factory with Django Rest Framework by julio 1 year, 9 months ago
- Image compression before saving the new model / work with JPG, PNG by Schleidens 1 year, 10 months ago
Comments
Please login first before commenting.