django-webp
Returns a webp image instead of jpg, gif or png to browsers which have support.
Usage
Load the webp
module in your template and use the webp
templatetag to point to the image you want to convert.
{% load webp %}
{# Use webp as you would use static templatetag #}
<img src="{% webp 'path/to/your/image.png' %}" alt="image" />
<!--
If the browser has support, generates:
<img src="/static/WEBP_CACHE/path/to/your/image.webp" alt="image" />
else, generates:
<img src="/static/path/to/your/image.png" alt="image" />
-->
Installation
First of all, you must install the webp support. In ubuntu you can install via apt-get:
apt-get install libwebp-dev
Please, check the official guide for the other systems.
Then, install django-webp
.
pip install django-webp
add it to INSTALLED_APPS
configuration
INSTALLED_APPS = (
'django.contrib.staticfiles',
'django_webp',
'...',
)
add the django_webp context processor
TEMPLATES = [
{
'...'
'OPTIONS': {
'context_processors': [
'...',
'django_webp.context_processors.webp',
],
},
},
]
Possible problems
django-webp
uses Pillow
to convert the images. If you’ve
installed the libwebp-dev
after already installed Pillow
, it’s
necessary to uninstall and install it back because it needs to be
compiled with it.
Cleaning the cache
You can clean the cache running:
python manage.py clean_webp_images