WordPress: автосмена размеров картинок

Информативное описание существующей проблемы

Представим некую типичную ситуацию, когда блоггер хочет сменить размеры всех вложенных изображений. Ну например, тему оформления решил сменить. А шаблону для поддержания задуманного автором эстетичного внешнего вида требуются иного размера картинки. Учитываем, что количество изображений превышает сотню. Менять вручную? Слишком затратно по времени да и для здоровья пользы не будет.

Решение задачи

Уставливаем плагин Regenerate Thumbnails от программиста Viper007Bond. Скачиваем свежую версию с официального сборника на орге. Процесс инсталляции стандартный, потому на нем я останавливаться не стану. Возможности плагина:

  • Массовая регенерация новых размеров миниатюр записей.
  • Поштучно-групповая смена длины-ширины.

Работа в первом варианте доступна из меню "Инструменты". Для работы со вторым перейдите в библиотеку медифайлов. Выберите фотографии, раскройте список доступных действий. Должен появится новый недвусмысленный пункт выпадающего списка.

WordPress плагин регенерации миниатюр

У расширения есть один маленький недостаток. Старые images остаются без изменений, т.е. не удаляются. Это легко исправить, патчим Regenerate Thumbnails:

@set_time_limit( 900 ); // 5 minutes per image should be PLENTY

// между строек отделенных пустыми переносами вставьте этот код
$info = pathinfo($fullsizepath);
$ext = $info['extension'];
$pattern = str_replace(".$ext", "-*x*.$ext", $fullsizepath);
foreach (glob($pattern) as $filename) {
	@unlink($filename);
}

$metadata = wp_generate_attachment_metadata( $image->ID, $fullsizepath );

Обратите внимание на то, что подобный прием работает только по принципу из большого в малое, т.е обрезкой и "ресайзингом".





© 2012-2014 Druweb.ru. Вы можете спокойно копировать любые материалы сайта только при наличии обратной ссылки.