@Bestolkovy

Ресайз изображения на лету средствами WordPress?

Добрый день!

Пытаюсь изменить изображение на лету, стандартными средствами WordPress (без сохранения уменьшенного изображения). Изучив кодекс, нашёл функцию которая это делает:

<?php
// загружаем объект
$image = wp_get_image_editor( 'http://wp-kama.ru/wp-content/uploads/2014/02/uka.png' );

// обрабатываем картинку
if ( ! is_wp_error( $image ) ) {
	// уменьшим её до размеров 80х80
	$image->resize( 80, 80, true );
	// сохраним в корне сайта под названием new_image.png
	$image->save( $_SERVER['DOCUMENT_ROOT'].'/new_image.png' );
}
?>


Изменил её под себя, чтобы она без всякого сохранения, брала изображение и выводила в шаблоне, но почему-то она с завидным упорством, отказывается работать:

<?php
  $image = wp_get_image_editor( 'http://wp-kama.ru/wp-content/uploads/2014/02/uka.png' );

  if ( ! is_wp_error( $image ) ) {
    $image->resize( 80, 80, true );
?>

<img src="<?php echo $image; ?>">

<?php } ?>


Ведь всё правильно? Почему она не срабатывает? Ведь это стандартный функционал WordPress?
  • Вопрос задан
  • 1617 просмотров
Пригласить эксперта
Ответы на вопрос 1
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
wp_get_image_editor() требует путь к локальному изображению, а не url. URL может работать, но далеко не всегда - зависит от сервака. Посмотрите дамп $image, не факт что картинка с удаленного сервера прилетела в WP_Image_Editor и он корректно инициализировался.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы