Как сделать так, чтобы в Smart Slider 3 картинки были webp (если этот формат поддерживается браузером)?
Smart Slider 3 устроен так, что картинки в слайдах выводятся через атрибут style у тега div, а не через тег img. Из-за этого большинство плагинов не могут заменить их на webp (если этот формат поддерживается браузером).
Как мне сделать так, чтобы в Smart Slider 3 картинки были webp (если этот формат поддерживается браузером)? И, конечно, чтобы это отражалось в pagespeed. Если я просто заменю background-image через JS, то pagespeed этого не заметит (я пробовал).
Если написать самому то алгоритм следующий.
Проверяем user_agent, если mac'оподобные браузеры, то не делаем ничего.
В остальных случаях заменяем img через buffer на picture с 2 сурсами, webp и оригинала. также можно подкидывать полифилл для особо древних.
Если не хотите делать это самостоятельно, попробуйте WebpExpress, он делает все правильно.
Smart Slider 3 хранит слайды не в img, а в style="background-image: url(...)". И WebpExpress не видит такие картинки. А pagespeed ругается на них.
Можно как-нибудь заставить его видеть их? Или что вообще можно тут сделать?
eugene159, если изображения хранятся в качестве бг - у WebpExpress есть специальные опции для вывода в настройках. Но делать этого не нужно, забудьте, так, как пусть вы и можете проверить браузер по его заголовку, но узнать наверняка о поддержке - не выйдет. Самое простое решение - сжать изображения и сделать Lazy Load для бг