Плагин wordpress для зеркального отображения изображений?

Ссылка скопирована
1 ответ

Привет, подскажите пожалуйста, есть ли плагин wordpress для зеркального отображения изображений, перед загрузкой на сервер?

Спасибо всем!

Дополнительно:

плагин wordpress для зеркального отображения изображений, перед загрузкой на сервер

Физической трансформации по X оси и сохранения измененного изображения в wp?

  • Михаил Р., да
  • Самопис, если будет актуально, написать могу
  • Олег, отправил вам в телегу
  • Ответы:

    В редакторе изображений в медиа галерее есть функционал ротации, думаю достаточно будет программно вызвать ее

    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Сергей Миронов Ответ

    Если нужно зеркально отражать изображения до сохранения на сервер, готового популярного плагина под такую узкую задачу может не быть. В медиаредакторе WordPress есть поворот/кадрирование, но именно автоматический flip по X до загрузки обычно делается кастомным кодом через обработку attachment после загрузки.

    Технически это можно сделать через hook wp_handle_upload или после создания attachment. Для обработки изображений WordPress использует редакторы GD/Imagick. У Imagick есть метод flopImage(), у GD можно пересобрать изображение вручную.

    Пример идеи для Imagick:

    add_filter('wp_handle_upload', function ($upload) {
        if (empty($upload['file']) || strpos($upload['type'], 'image/') !== 0) {
            return $upload;
        }
     
        if (!class_exists('Imagick')) {
            return $upload;
        }
     
        $image = new Imagick($upload['file']);
        $image->flopImage();
        $image->writeImage($upload['file']);
        $image->clear();
        $image->destroy();
     
        return $upload;
    });

    add_filter('wp_handle_upload', function ($upload) { if (empty($upload['file']) || strpos($upload['type'], 'image/') !== 0) { return $upload; } if (!class_exists('Imagick')) { return $upload; } $image = new Imagick($upload['file']); $image->flopImage(); $image->writeImage($upload['file']); $image->clear(); $image->destroy(); return $upload; });

    Но я бы не включал это глобально для всех загрузок: можно случайно отзеркалить логотипы, скриншоты, документы, изображения товаров и сломать контент. Лучше добавить checkbox в админке “отразить изображение” или отдельную кнопку в медиатеке.

    Если задача разовая, проще отразить изображения до загрузки в графическом редакторе или обработать пакетно локально. Если задача системная, делайте небольшой плагин с настройкой: применять только для определённого типа записи, роли пользователя или поля загрузки.

    И ещё: после изменения оригинала нужно пересоздать миниатюры, иначе часть размеров может остаться неотзеркаленной. Поэтому автоматический flip должен выполняться до генерации thumbnails либо сопровождаться regenerate metadata.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно