Version Description
(released: 30 jun 2019)
- Hopefully fixed WebP Express Error: "png" option is Object
Download this release
Release Info
Developer | rosell.dk |
Plugin | WebP Express |
Version | 0.14.21 |
Comparing to | |
See all releases |
Code changes from version 0.14.20 to 0.14.21
README.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://ko-fi.com/rosell
|
|
4 |
Tags: webp, images, performance
|
5 |
Requires at least: 4.0
|
6 |
Tested up to: 5.2
|
7 |
-
Stable tag: 0.14.
|
8 |
Requires PHP: 5.6
|
9 |
License: GPLv3
|
10 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
@@ -16,10 +16,7 @@ Serve autogenerated WebP images instead of jpeg/png to browsers that supports We
|
|
16 |
Almost 4 out of 5 mobile users use a browser that is able to display webp images. Yet, on most websites, they are served jpeg images, which are typically double the size of webp images for a given quality. What a waste of bandwidth! This plugin was created to help remedy that situation. With little effort, Wordpress admins can have their site serving autogenerated webp images to browsers that supports it, while still serving jpeg and png files to browsers that does not support webp.
|
17 |
|
18 |
!! **SECURITY NOTICE** !!
|
19 |
-
Security issues has recently been found and fixed. I urge you to upgrade to the latest release (at least 0.14.11, but go with 0.14.
|
20 |
-
|
21 |
-
**VACATION NOTICE**
|
22 |
-
The maintainer is on vacation between June the 30th and end July. Please help each other out. In case something cannot wait, remember that this library is open source. You can find it on github, fork it and fix it (or have someone do it for you).
|
23 |
|
24 |
|
25 |
### The image converter
|
@@ -44,10 +41,6 @@ The plugin builds on [WebPConvert](https://github.com/rosell-dk/webp-convert) an
|
|
44 |
- Less bandwidth consumption - makes a huge difference in the parts of the world where the internet is slow and costly (you know, ~80% of the world population lives under these circumstances).
|
45 |
- Currently ~73% of all traffic, and ~79% of mobile browsing traffic are done with browsers supporting webp. With Mozilla and Microsoft [finally on board](https://medium.com/@richard_90141/webp-image-support-an-8-year-saga-7aa2bedb8d02), these numbers are bound to increase. Check current numbers on [caniuse.com](https://caniuse.com/webp)).
|
46 |
|
47 |
-
### Recent news
|
48 |
-
Jun 2019: Better conversions and more conversion options
|
49 |
-
Feb 2019: Multisite is now supported (0.12.0)
|
50 |
-
Jan 2019: Plugin can now alter HTML (0.11.0)
|
51 |
|
52 |
== Installation ==
|
53 |
|
@@ -158,7 +151,10 @@ Easy enough. Browsers looks at the *content type* header rather than the URL to
|
|
158 |
I am btw considering making an option to have the plugin redirect to the webp instead of serving immediately. That would remove the apparent mismatch between file extension and content type header. However, the cost of doing that will be an extra request for each image, which means extra time and worse performance. I believe you'd be ill advised to use that option, so I guess I will not implement it. But perhaps you have good reasons to use it? If you do, please let me know!
|
159 |
|
160 |
= I am on NGINX / OpenResty =
|
161 |
-
|
|
|
|
|
|
|
162 |
|
163 |
There are two different approaches to achieve the redirections. One based on *rewrite* and one based on *try_files*. As *try_files* performs best, I shall recommend that.
|
164 |
|
@@ -612,11 +608,15 @@ Easy enough! - [Go here!](https://ko-fi.com/rosell). Or [here](https://buymeacof
|
|
612 |
|
613 |
== Changelog ==
|
614 |
|
|
|
|
|
|
|
|
|
|
|
615 |
= 0.14.20 =
|
616 |
*(released: 29 jun 2019)*
|
617 |
|
618 |
-
* Fixed bug: Ewww api-key was forgot upon saving options
|
619 |
-
* Cleaned away unneeded files in vendor folders (primarily docs and tests)
|
620 |
|
621 |
= 0.14.19 =
|
622 |
*(released: 28 jun 2019)*
|
@@ -920,6 +920,9 @@ For older releases, check out changelog.txt
|
|
920 |
|
921 |
== Upgrade Notice ==
|
922 |
|
|
|
|
|
|
|
923 |
= 0.14.20 =
|
924 |
* Ewww api-key was forgotten upon saving options
|
925 |
|
4 |
Tags: webp, images, performance
|
5 |
Requires at least: 4.0
|
6 |
Tested up to: 5.2
|
7 |
+
Stable tag: 0.14.21
|
8 |
Requires PHP: 5.6
|
9 |
License: GPLv3
|
10 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
16 |
Almost 4 out of 5 mobile users use a browser that is able to display webp images. Yet, on most websites, they are served jpeg images, which are typically double the size of webp images for a given quality. What a waste of bandwidth! This plugin was created to help remedy that situation. With little effort, Wordpress admins can have their site serving autogenerated webp images to browsers that supports it, while still serving jpeg and png files to browsers that does not support webp.
|
17 |
|
18 |
!! **SECURITY NOTICE** !!
|
19 |
+
Security issues has recently been found and fixed. I urge you to upgrade to the latest release (at least 0.14.11, but go with 0.14.21, as there are important bug fixes)
|
|
|
|
|
|
|
20 |
|
21 |
|
22 |
### The image converter
|
41 |
- Less bandwidth consumption - makes a huge difference in the parts of the world where the internet is slow and costly (you know, ~80% of the world population lives under these circumstances).
|
42 |
- Currently ~73% of all traffic, and ~79% of mobile browsing traffic are done with browsers supporting webp. With Mozilla and Microsoft [finally on board](https://medium.com/@richard_90141/webp-image-support-an-8-year-saga-7aa2bedb8d02), these numbers are bound to increase. Check current numbers on [caniuse.com](https://caniuse.com/webp)).
|
43 |
|
|
|
|
|
|
|
|
|
44 |
|
45 |
== Installation ==
|
46 |
|
151 |
I am btw considering making an option to have the plugin redirect to the webp instead of serving immediately. That would remove the apparent mismatch between file extension and content type header. However, the cost of doing that will be an extra request for each image, which means extra time and worse performance. I believe you'd be ill advised to use that option, so I guess I will not implement it. But perhaps you have good reasons to use it? If you do, please let me know!
|
152 |
|
153 |
= I am on NGINX / OpenResty =
|
154 |
+
The easy solution is simply to use the plugin in "CDN friendly" mode, do a bulk conversion and activate the "Convert on upload" option.
|
155 |
+
|
156 |
+
This however does not cover images in CSS and images being dynamically added with javascript.
|
157 |
+
To get this working, requires manually inserting redirection rules in the NGINX configuration file (nginx.conf or the configuration file for the site, found in `/etc/nginx/sites-available`).
|
158 |
|
159 |
There are two different approaches to achieve the redirections. One based on *rewrite* and one based on *try_files*. As *try_files* performs best, I shall recommend that.
|
160 |
|
608 |
|
609 |
== Changelog ==
|
610 |
|
611 |
+
= 0.14.21 =
|
612 |
+
*(released: 30 jun 2019)*
|
613 |
+
|
614 |
+
* Hopefully fixed WebP Express Error: "png" option is Object
|
615 |
+
|
616 |
= 0.14.20 =
|
617 |
*(released: 29 jun 2019)*
|
618 |
|
619 |
+
* Fixed bug: Ewww api-key was forgot upon saving options
|
|
|
620 |
|
621 |
= 0.14.19 =
|
622 |
*(released: 28 jun 2019)*
|
920 |
|
921 |
== Upgrade Notice ==
|
922 |
|
923 |
+
= 0.14.21 =
|
924 |
+
* Hopefully fixed WebP Express Error: "png" option is Object
|
925 |
+
|
926 |
= 0.14.20 =
|
927 |
* Ewww api-key was forgotten upon saving options
|
928 |
|
lib/classes/ConvertHelperIndependent.php
CHANGED
@@ -329,7 +329,7 @@ APACHE
|
|
329 |
|
330 |
$text = preg_replace('#' . preg_quote($_SERVER["DOCUMENT_ROOT"]) . '#', '[doc-root]', $text);
|
331 |
|
332 |
-
$text = 'WebP Express 0.14.
|
333 |
|
334 |
$logFile = self::getLogFilename($source, $logDir);
|
335 |
|
329 |
|
330 |
$text = preg_replace('#' . preg_quote($_SERVER["DOCUMENT_ROOT"]) . '#', '[doc-root]', $text);
|
331 |
|
332 |
+
$text = 'WebP Express 0.14.21. ' . $msgTop . ', ' . date("Y-m-d H:i:s") . "\n\r\n\r" . $text;
|
333 |
|
334 |
$logFile = self::getLogFilename($source, $logDir);
|
335 |
|
vendor/rosell-dk/webp-convert-cloud-service/src/Serve.php
CHANGED
@@ -112,7 +112,7 @@ class Serve
|
|
112 |
|
113 |
if (isset($_POST['options'])) {
|
114 |
// Merge in options in $_POST, overwriting the webp-convert options in config
|
115 |
-
$convertOptionsInPost = (array) json_decode($_POST['options']);
|
116 |
$convertOptions = array_merge($options['webp-convert'], $convertOptionsInPost);
|
117 |
} else {
|
118 |
$convertOptions = $options['webp-convert'];
|
112 |
|
113 |
if (isset($_POST['options'])) {
|
114 |
// Merge in options in $_POST, overwriting the webp-convert options in config
|
115 |
+
$convertOptionsInPost = (array) json_decode($_POST['options'], true);
|
116 |
$convertOptions = array_merge($options['webp-convert'], $convertOptionsInPost);
|
117 |
} else {
|
118 |
$convertOptions = $options['webp-convert'];
|
vendor/rosell-dk/webp-convert/.gitattributes
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/tests export-ignore
|
2 |
-
/.gitattributes export-ignore
|
3 |
-
/.gitignore export-ignore
|
4 |
-
/.travis.yml export-ignore
|
|
|
|
|
|
|
|
vendor/rosell-dk/webp-convert/.travis.yml
DELETED
@@ -1,134 +0,0 @@
|
|
1 |
-
|
2 |
-
# Other projects which deals with images in PHP and uses travis:
|
3 |
-
# https://github.com/JBZoo/Image
|
4 |
-
# https://travis-ci.org/peter279k/php-image-converter/builds
|
5 |
-
|
6 |
-
language: php
|
7 |
-
|
8 |
-
#php:
|
9 |
-
# - 5.6
|
10 |
-
# - 7.1
|
11 |
-
# - 7.2
|
12 |
-
# - 7.3
|
13 |
-
|
14 |
-
# cache composer?
|
15 |
-
# https://blog.wyrihaximus.net/2015/07/composer-cache-on-travis/
|
16 |
-
# https://github.com/thephpleague/glide/blob/master/.travis.yml
|
17 |
-
cache:
|
18 |
-
#apt: true
|
19 |
-
directories:
|
20 |
-
- "$HOME/opt" # cache our imagick/gmagick install
|
21 |
-
- $HOME/vips
|
22 |
-
|
23 |
-
addons:
|
24 |
-
apt:
|
25 |
-
packages:
|
26 |
-
- libjpeg-dev
|
27 |
-
- libpng-dev
|
28 |
-
- libwebp-dev
|
29 |
-
|
30 |
-
# following for vips (taken from https://github.com/libvips/php-vips/blob/master/.travis.yml)
|
31 |
-
- gobject-introspection
|
32 |
-
- libcfitsio3-dev
|
33 |
-
- libfftw3-dev
|
34 |
-
- libgif-dev
|
35 |
-
- libgs-dev
|
36 |
-
- libgsf-1-dev
|
37 |
-
- libmatio-dev
|
38 |
-
- libopenslide-dev
|
39 |
-
- liborc-0.4-dev
|
40 |
-
- libpango1.0-dev
|
41 |
-
- libpoppler-glib-dev
|
42 |
-
|
43 |
-
sudo: false
|
44 |
-
|
45 |
-
matrix:
|
46 |
-
fast_finish: true
|
47 |
-
include:
|
48 |
-
- name: "Rather new setup (PHP 7.3, Xenial)"
|
49 |
-
php: 7.3
|
50 |
-
#dist: trusty
|
51 |
-
dist: xenial
|
52 |
-
#dist: bionic
|
53 |
-
env:
|
54 |
-
- UPLOADCOVERAGE=0
|
55 |
-
- PHPSTAN=1
|
56 |
-
- TESTSRCBUILD=0
|
57 |
-
- INSTALLVIPS=1
|
58 |
-
#- VIPS_VERSION="8.6.3"
|
59 |
-
- VIPS_VERSION="8.7.4"
|
60 |
-
- INSTALLIMAGEMAGICK=0 # imagemagick.org is currently down... - so installation cannot download gzip
|
61 |
-
#- IMAGEMAGICK_VERSION="7.0.8-43"
|
62 |
-
|
63 |
-
- name: "Standard setup (PHP 7.1, Xenial) - with coverage upload"
|
64 |
-
php: 7.1
|
65 |
-
#dist: trusty
|
66 |
-
dist: xenial
|
67 |
-
#dist: bionic
|
68 |
-
env:
|
69 |
-
- UPLOADCOVERAGE=1
|
70 |
-
- PHPSTAN=1
|
71 |
-
- TESTSRCBUILD=1
|
72 |
-
- INSTALLVIPS=1
|
73 |
-
- VIPS_VERSION="8.6.3"
|
74 |
-
#- VIPS_VERSION="8.7.4"
|
75 |
-
- INSTALLIMAGICK=1
|
76 |
-
- IMAGEMAGICK_VERSION="7.0.8-43"
|
77 |
-
|
78 |
-
- name: "Old setup (PHP 5.6, Trusty)"
|
79 |
-
php: 5.6
|
80 |
-
dist: trusty
|
81 |
-
#dist: xenial
|
82 |
-
#dist: bionic
|
83 |
-
env:
|
84 |
-
- UPLOADCOVERAGE=0
|
85 |
-
- PHPSTAN=0
|
86 |
-
- TESTSRCBUILD=0
|
87 |
-
- INSTALLVIPS=0
|
88 |
-
#- VIPS_VERSION="8.7.4"
|
89 |
-
- INSTALLIMAGEMAGICK=0 # imagemagick.org is currently down... - so installation cannot download gzip
|
90 |
-
#allow_failures:
|
91 |
-
|
92 |
-
before_install:
|
93 |
-
# VIPS
|
94 |
-
- if [[ $INSTALLVIPS == 1 ]]; then bash install-vips.sh; fi
|
95 |
-
|
96 |
-
# Update PATH so that travis can find our imagemagick / gmagick
|
97 |
-
- export PATH=$HOME/opt/bin:$PATH
|
98 |
-
|
99 |
-
# ImageMagick
|
100 |
-
- if [[ $INSTALLIMAGEMAGICK == 1 ]]; then bash install-imagemagick-with-webp.sh; fi
|
101 |
-
|
102 |
-
# install imagick extension (if not already there)
|
103 |
-
# hm, not working
|
104 |
-
#- echo '' | pecl install imagick
|
105 |
-
|
106 |
-
# GMagick
|
107 |
-
|
108 |
-
- bash install-gmagick-with-webp.sh
|
109 |
-
#- export GMAGICK_PATH=$HOME/opt/bin
|
110 |
-
|
111 |
-
# Hm, extension is not working yet. When I get to install the extension I get the message:
|
112 |
-
# "Please provide a path to GraphicsMagick-config program."
|
113 |
-
# According to here: https://stackoverflow.com/questions/8626558/please-provide-the-prefix-of-graphicsmagick-installation-autodetect
|
114 |
-
# it is because the libgraphicsmagick1-dev package is not installed
|
115 |
-
# But is that needed when we are building ?
|
116 |
-
#- echo '' | pecl install gmagick-beta
|
117 |
-
|
118 |
-
before_script:
|
119 |
-
#- echo $PATH
|
120 |
-
- (composer self-update; true)
|
121 |
-
- composer install
|
122 |
-
- if [[ $PHPSTAN == 1 ]]; then composer require --dev phpstan/phpstan:"^0.11.5"; fi
|
123 |
-
|
124 |
-
script:
|
125 |
-
- if [[ $TESTSRCBUILD == 1 ]]; then composer test-src-build; fi
|
126 |
-
- composer test-src
|
127 |
-
- if [[ $PHPSTAN == 1 ]]; then vendor/bin/phpstan analyse src --level=4; fi
|
128 |
-
|
129 |
-
after_script:
|
130 |
-
- |
|
131 |
-
if [[ $UPLOADCOVERAGE == 1 ]]; then
|
132 |
-
wget https://scrutinizer-ci.com/ocular.phar
|
133 |
-
php ocular.phar code-coverage:upload --format=php-clover coverage.clover
|
134 |
-
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
webp-express.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: WebP Express
|
4 |
* Plugin URI: https://github.com/rosell-dk/webp-express
|
5 |
* Description: Serve autogenerated WebP images instead of jpeg/png to browsers that supports WebP. Works on anything (media library images, galleries, theme images etc).
|
6 |
-
* Version: 0.14.
|
7 |
* Author: Bjørn Rosell
|
8 |
* Author URI: https://www.bitwise-it.dk
|
9 |
* License: GPL2
|
3 |
* Plugin Name: WebP Express
|
4 |
* Plugin URI: https://github.com/rosell-dk/webp-express
|
5 |
* Description: Serve autogenerated WebP images instead of jpeg/png to browsers that supports WebP. Works on anything (media library images, galleries, theme images etc).
|
6 |
+
* Version: 0.14.21
|
7 |
* Author: Bjørn Rosell
|
8 |
* Author URI: https://www.bitwise-it.dk
|
9 |
* License: GPL2
|