WordPress как на ладони
wordpress jino

Как установить WebP на WordPress, есть не рабочий код для functions.php

Подскажите пожалуйста. как установить WebP на WordPress 4.8.2

Нашел в сети следующий пост ссылка
В статье говорится, что достаточно добавить в functions.php функцию и все заработает.

Вот что нужно добавить в functions.php:

add_filter('upload_mimes','webp_mime_type');

	function webp_mime_type($mimes){

		return array_merge($mimes,array (

			'webp' => 'image/webp'

		));

	}

function webp_script() {

	// Loads JavaScript file for webp image support in all browsers 

	wp_enqueue_script( 'webpjs-script', get_template_directory_uri() . '/js/webpjs-0.0.2.min.js');    

}

add_action( 'wp_enqueue_scripts', 'webp_script' );

window.testWebP = function(callback) {
	var webP = new Image();
	webP.onload = webP.onerror = function () {
		callback(webP.height == 2);
	};
	webP.src = 'data:image/webp;base64,UklGRjoAAABXRUJQVlA4IC4AAACyAgCdASoCAAIALmk0mk0iIiIiIgBoSygABc6WWgAA/veff/0PP8bA//LwYAAA';
};

window.testWebP(function(support) {

   if(!support){
		 $('img[src$=".webp"]').each(function(index,element) {
		  element.src = element.src.replace('.webp','.png');
		});   
	}
});

Но на выходе сайт не загружается..
Статья написана в 2015 году, и наверное код уже устарел, посмотрите пожалуйста, уж очень хочется установить webp...

0
Александр
6 месяцев назад
  • 1

    В Вашем случае встраиваемый код (всё, что ниже строчки add_action( 'wp_enqueue_scripts', 'webp_script' );) уже подключен через wp_enqueue_script и он просто не нужен. Удалите JavaScript и удостоверьтесь, что ссылка на подключаемый файл появилась на странице.

    А так, WP выводит дополнительные скрипты на страницу через добавление событий к хукам печати скриптов (wp_print_footer_scripts, admin_print_footer_scripts и другие)

    add_action( 'wp_print_footer_scripts', 'action_function_name_7772' );
    function action_function_name_7772(){
    	// action...
    }
    DMax 6 месяцев назад

    Все что ниже удалил, ошибки нет и скрипт подключается, но изображения по прежнему выводятся как обычные изображения, (png, jpg...) они вроде должны выводится (.webp) или я чего-то не понимаю?

    И как понять что скрипт сработал??

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация