Advanced Media Offloader

Описание

Advanced Media Offloader помогает оптимизировать работу с медиа в WordPress, автоматически загружая ваши медиа-файлы в облачные хранилища, совместимые с S3.

Столкнулись с ограничениями серверного пространства? Хотите повысить производительность сайта, обслуживая медиа через CDN? Этот плагин берет на себя техническую работу по миграции медиа в облако, переписыванию URL и обеспечению совместимости с вашим существующим контентом.

Ключевые преимущества

  • Сократите требования к серверному хранилищу и расходы
  • Снижайте нагрузку на сервер при обслуживании медиа-файлов
  • Улучшите скорость загрузки сайта по всему миру при использовании вместе с CDN-сервисами
  • Сохраняйте полную совместимость с функциями работы с медиа WordPress
  • Нет необходимости изменять существующий контент — URL переписываются автоматически

Поддерживаемые облачные провайдеры

  • Amazon S3 — стандартное в отрасли объектное хранилище
  • Cloudflare R2 — совместимое с S3 хранилище с нулевыми расходами на исходящий трафик
  • DigitalOcean Spaces — простое объектное хранилище от DigitalOcean
  • Backblaze B2 — Affordable S3-compatible storage with predictable pricing
  • Wasabi — горячее облачное хранилище с предсказуемой ценой
  • MinIO — Any S3-compatible storage (MinIO, OVHcloud Object Storage, Scaleway, Linode, Vultr, IBM COS, and more)

Функции

  • Автоматическая выгрузка — новые медиа-загрузки автоматически отправляются в ваше облачное хранилище
  • Умные политики — создавайте продвинутые правила, чтобы точно контролировать, какие файлы и когда выгружаются, обеспечивая детальное управление вашим хранилищем. (Узнать больше)
  • Массовая миграция и WP CLI — легко перемещайте существующие медиа-файлы в облако с помощью мощной поддержки командной строки для массовых операций и автоматизации (Узнать больше)
  • Thumbnail Regeneration Compatibility — Compatible with WP-CLI wp media regenerate command and the Regenerate Thumbnails plugin. Regenerated thumbnails automatically offload to cloud storage. Note: Not compatible with Full Cloud Migration retention policy.
  • Умное переписывание URL — все URL медиа автоматически переписываются для обслуживания из облачного хранилища
  • Версионирование файлов — добавление уникальных временных меток к путям медиа, чтобы избежать проблем с кэшированием
  • Гибкое хранение — возможность сохранять локальные копии или удалять их после успешной выгрузки
  • Зеркальное удаление — возможность удалять файлы из облачного хранилища при их удалении из WordPress
  • Пользовательские пути — настройка пользовательских префиксов путей в вашем облачном хранилище
  • Developer-Friendly — Extensive action and filter hooks for extending functionality (View Documentation)

Developer Documentation

For developers looking to extend or customize the plugin behavior, we provide comprehensive documentation for all available hooks:

View Developer Hooks Documentation

Quick example — skip offloading files larger than 5MB:

add_filter('advmo_should_offload_attachment', function($should_offload, $attachment_id) {
    $file = get_attached_file($attachment_id);
    if ($file && filesize($file) > 5 * 1024 * 1024) {
        return false;
    }
    return $should_offload;
}, 10, 2);

Конфигурация

Для безопасности данные вашего облачного провайдера хранятся в файле wp-config.php, а не в базе данных.

Note: Domain and endpoint URLs will automatically be prefixed with https:// if you don’t include it, but we recommend always including the full URL for clarity.

Настройка Cloudflare R2

    define('ADVMO_CLOUDFLARE_R2_KEY', 'your-access-key');
    define('ADVMO_CLOUDFLARE_R2_SECRET', 'your-secret-key');
    define('ADVMO_CLOUDFLARE_R2_BUCKET', 'your-bucket-name');
    define('ADVMO_CLOUDFLARE_R2_DOMAIN', 'your-domain-url');
    define('ADVMO_CLOUDFLARE_R2_ENDPOINT', 'your-endpoint-url');

Настройка DigitalOcean Spaces

    define('ADVMO_DOS_KEY', 'your-access-key');
    define('ADVMO_DOS_SECRET', 'your-secret-key');
    define('ADVMO_DOS_BUCKET', 'your-bucket-name');
    define('ADVMO_DOS_DOMAIN', 'your-domain-url');
    define('ADVMO_DOS_ENDPOINT', 'your-endpoint-url');

Настройка MinIO

Use this for any storage that supports the S3 API via a custom endpoint (e.g., MinIO, OVHcloud Object Storage, Scaleway, Linode, Vultr, IBM COS). Select this if your provider isn’t listed separately.

    define('ADVMO_MINIO_KEY', 'your-access-key');
    define('ADVMO_MINIO_SECRET', 'your-secret-key');
    define('ADVMO_MINIO_BUCKET', 'your-bucket-name');
    define('ADVMO_MINIO_DOMAIN', 'your-domain-url');
    define('ADVMO_MINIO_ENDPOINT', 'your-endpoint-url');
    define('ADVMO_MINIO_PATH_STYLE_ENDPOINT', false); // Optional. Set to true if your MinIO server requires path-style URLs (most self-hosted MinIO setups). Default is false.
    define('ADVMO_MINIO_REGION', 'your-bucket-region'); // Optional. Set your MinIO bucket region if needed. Default is 'us-east-1'.

Настройка Amazon S3

    define('ADVMO_AWS_KEY', 'your-access-key');
    define('ADVMO_AWS_SECRET', 'your-secret-key');
    define('ADVMO_AWS_BUCKET', 'your-bucket-name');
    define('ADVMO_AWS_REGION', 'your-bucket-region');
    define('ADVMO_AWS_DOMAIN', 'your-domain-url');

Backblaze B2 Configuration

    define('ADVMO_BACKBLAZE_B2_KEY', 'your-application-key-id');
    define('ADVMO_BACKBLAZE_B2_SECRET', 'your-application-key');
    define('ADVMO_BACKBLAZE_B2_BUCKET', 'your-bucket-name');
    define('ADVMO_BACKBLAZE_B2_REGION', 'your-bucket-region');
    define('ADVMO_BACKBLAZE_B2_DOMAIN', 'your-domain-url');
    define('ADVMO_BACKBLAZE_B2_ENDPOINT', 'your-endpoint-url');

Настройка Wasabi

    define('ADVMO_WASABI_KEY', 'your-access-key');
    define('ADVMO_WASABI_SECRET', 'your-secret-key');
    define('ADVMO_WASABI_BUCKET', 'your-bucket-name');
    define('ADVMO_WASABI_REGION', 'your-bucket-region');
    define('ADVMO_WASABI_DOMAIN', 'your-domain-url');

Использование S3 PHP SDK

Advanced Media Offloader использует AWS SDK для PHP для взаимодействия с облачными хранилищами, совместимыми с S3. Этот мощный SDK предоставляет удобный API для управления операциями с облачным хранилищем, включая загрузку и скачивание файлов и многое другое. SDK поддерживается Amazon Web Services, что гарантирует высокую совместимость и производительность с сервисами S3.

Для получения дополнительной информации о AWS SDK для PHP посетите сайт:
https://aws.amazon.com/sdk-for-php/.

Скриншоты

  • Страница настроек плагина — настройка параметров облачного хранилища и вариантов выгрузки
  • Страница обзора медиа — Обзор медиа и массовая выгрузка
  • Страница сведений о вложении — просмотр состояния выгрузки отдельных медиа-файлов.

Установка

  1. Загрузите файлы плагина в /wp-content/plugins/advanced-media-offloader/ или установите напрямую через WordPress
  2. Активируйте плагин через меню «Плагины» в WordPress
  3. Перейдите в «Media Offloader» в меню администратора, чтобы настроить параметры
  4. Добавьте данные вашего облачного провайдера в wp-config.php (см. примеры конфигурации ниже)
  5. Проверьте соединение и начните выгрузку медиа-файлов

Часто задаваемые вопросы

Поддерживает ли этот плагин другие облачные платформы хранения?

Currently supports Amazon S3, Backblaze B2, Cloudflare R2, DigitalOcean Spaces, MinIO & Wasabi. Additional providers are on the roadmap based on user demand.

Что происходит с медиа-файлами, уже загруженными на мой сервер?

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

Как именно работает переписывание URL?

Плагин подключается к основным функциям работы с медиа WordPress с помощью wp_get_attachment_url и связанных фильтров. Это обеспечивает совместимость с темами, плагинами и стандартными функциями ядра без изменения URL в базе данных.

Могу ли я при необходимости откатить изменения?

Файлы, выгруженные с опцией «Сохранить локальные файлы», могут обслуживаться локально при деактивации плагина. Для полной миграции в облако потребуется повторно скачать медиа-файлы, если вы захотите вернуть их обратно.

Как обрабатываются размеры изображений и миниатюры?

Все сгенерированные размеры изображений выгружаются вместе с оригиналом. Переписывание URL работает для всех размеров и атрибутов srcset.

Будет ли это работать с конструкторами страниц и плагинами с большим количеством медиа?

Да, так как плагин использует стандартные хуки ядра WordPress для переписывания URL, он совместим с Elementor, Beaver Builder, WooCommerce и большинством других плагинов, использующих стандартные функции работы с медиа WordPress.

Поддерживает ли он приватные файлы с управлением доступом?

Бесплатная версия поддерживает только общедоступные файлы. Приватные файлы с аутентификацией могут быть добавлены в будущей премиум-версии.

Что произойдет, если я удалю медиа-файл из библиотеки WordPress?

При включенной опции «Mirror Delete» соответствующие файлы в облаке удаляются автоматически. В противном случае файлы остаются в облачном хранилище, что может привести к появлению «сиротских» объектов.

Как можно отлаживать проблемы с выгрузкой файлов?

Плагин записывает ошибки в метаданные вложений. Проверьте страницу «Обзор медиа» для подробного отчета об ошибках или включите ведение журнала отладки WordPress для получения дополнительной информации.

Какая рекомендуемая конфигурация корзины?

Для оптимальной производительности:

1. Включите конфигурацию CORS
2. Установите соответствующие публичные права на чтение
3. Настройте правильный регион (ближайший к вашей аудитории)
4. Рассмотрите использование CDN для глобального распространения

How do I configure public access for my bucket?

By default, the plugin sets public-read ACL on uploaded objects. However, some providers don’t support ACLs, and AWS S3 has ACLs disabled by default on new buckets since April 2023. You should configure bucket-level public access using your provider’s bucket policies.

If you encounter AccessControlListNotSupported errors or need to disable ACLs, add the following code to your theme’s functions.php or a custom plugin:

add_filter('advmo_object_acl', '__return_false');

Отзывы

12.01.2026
I don’t have experience with other offloading plugins, but Advanced Media Offloader has been an absolute joy to use — simple, intuitive, and straightforward.
12.01.2026
Fantastic plugin. Easy to setup and rolling. All working fine with no issue. Much appreciated for the effort you guys put in. Thank you
06.12.2025
I tried several plugins—this one is the cleanest and easiest to understand. Top-notch support, thanks to the developer! Keep up the good work!
05.12.2025
I had a challenging task — exporting about 4 TB of media files to R2. I personally reached out to the plugin developer, Masoud Golchin, and within just two days he configured everything so that my site worked flawlessly. The support was exceptional, and the plugin is incredibly reliable and efficient.There is simply no more stable alternative out there.A solid 5 stars!
When selecting a solution for media offloading, I narrowed my choice down to two options. Ultimately, I selected Advanced Media Offloader due to the numerous reports regarding their superior customer support. I can now verify that this reputation is entirely well-founded. The plugin itself offers a robust solution for managing media, but the technical support provided by the team—specifically Masoud—is what truly sets this product apart. As the configuration required some technical nuance, I required guidance to ensure a seamless integration. Masoud was incredibly responsive and provided clear, step-by-step assistance that went above and beyond standard troubleshooting. The level of service received was comparable to a premium, paid consultancy. For anyone seeking a reliable offloading tool backed by a knowledgeable and dedicated support team, I unreservedly recommend this plugin.
26.11.2025
Does one job, and does it really well. Supports every major cloud object storage provider, either directly or through S3-compatible API. When it comes to fixing any issues or adding new integrations and features, the developer providers free support better than paid support offered by many others. It’s a pity to see a two-star review and two one-star reviews left by clueless people who aren’t competent enough to even try to run any websites on their own. This plugin deserves all five-star reviews only. HIGHLY recommended!
Посмотреть 41 отзыв

Участники и разработчики

«Advanced Media Offloader» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:

Участники

«Advanced Media Offloader» переведён на 5 языков. Благодарим переводчиков за их работу.

Перевести «Advanced Media Offloader» на ваш язык.

Заинтересованы в разработке?

Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.

Журнал изменений

4.3.1

  • Added: advmo_object_acl filter to customize or disable object-level ACL permissions

4.3.0

  • Added: New visual badges in Media Library show offload status at a glance. Cloud icon for offloaded files, warning icon for failed uploads.
  • Added: Visual «Deleting…» loading indicator with spinner in Media Library attachment modal when deleting offloaded media
  • Added: Offload status filter dropdown in Media Library for quick filtering by offload state.
  • Improved: Optimized cloud deletion performance using batched deleteObjects API (up to 1000 keys per request) for faster deletion of attachments with multiple sizes
  • Fixed: MinIO “Use Path-Style Endpoint” now correctly respects boolean wp-config.php constants (e.g. define('ADVMO_MINIO_PATH_STYLE_ENDPOINT', true);).

4.2.3

  • Fixed: TypeError when uploading non-image files (SVG, ZIP, PDF)

4.2.2

  • Added: Compatibility with WordPress 6.9
  • Added: Full Compatibility with Modern Image Formats
  • Fixed: Minor changes and improvements

4.2.1

  • Fix: Checkbox states for credential fields now properly persist when unchecked
  • Fix: Deletion failure when WordPress year/month folders are disabled

4.2.0

  • New: Added compatibility for thumbnail regeneration with WP-CLI wp media regenerate command and the Regenerate Thumbnails plugin. Regenerated thumbnails now automatically offload to cloud storage. Note: This feature does not work with Full Cloud Migration retention policy.
  • New: Added the ability to configure cloud provider credentials through the WordPress admin settings page while maintaining backward compatibility with wp-config.php constants. Constants take priority and disable corresponding fields when defined.
  • New: Added setting to toggle automatic cloud offloading for new uploads
  • New: Added customizable Name field S3-compatible providers to identify specific storage services (e.g., MinIO, OVHcloud, Scaleway). Default is «MinIO» with backward compatibility for existing installations.
  • Fix: Minor changes and improvements

4.1.1

  • New: Added Backblaze B2 support — affordable S3-compatible cloud storage with predictable pricing
  • Improved: Automatic URL normalization — Domain and endpoint URLs are now automatically prefixed with https:// if missing, eliminating common configuration errors

4.1.0

  • Новое: добавлен фильтр advmo_cloud_providers, позволяющий добавлять, удалять или настраивать список доступных облачных провайдеров
  • Новое: добавлена защита уникальных имен файлов — UniqueFilenameObserver автоматически предотвращает перезапись файлов при включенной полной миграции в облако
  • Новое: добавлены фильтры доменов для разработчиков, позволяющие программно изменять CDN/пользовательские домены для каждого провайдера (advmo_aws_domain, advmo_cloudflare_r2_domain, advmo_dos_domain, advmo_minio_domain, advmo_wasabi_domain)
  • Новое: добавлен фильтр advmo_should_upload_original_image для управления загрузкой оригинальных изображений в облако (по умолчанию: true)
  • Исправление: оригинальные изображения теперь корректно загружаются в облачное хранилище и удаляются из него вместе с масштабированными версиями
  • Исправление: для фоновых процессов, которые могли зависать, теперь предусмотрены корректные механизмы восстановления
  • Исправление: отключена опция use_aws_shared_config_files для всех провайдеров, совместимых с S3, чтобы предотвратить возможные конфликты и проблемы с безопасностью

4.0.3

  • Исправлено: устранено переполнение памяти и фатальные ошибки при работе с выгруженными SVG-файлами.

4.0.2

  • Улучшена поддержка SVG и исправлены проблемы с иконками SVG в Elementor после выгрузки.

4.0.1

  • feat: добавлено фильтр advmo_should_offload_attachment для условного пропуска разгрузки

4.0.0

  • Добавлено: команда WP CLI wp advmo offload для массовых операций и автоматизации (Узнать больше)
  • Добавлено: отдельная кнопка «Выгрузить сейчас» на экране редактирования вложения для выгрузки по требованию
  • Добавлено: функция повторной попытки для неудачных выгрузок с отдельной кнопкой «Повторить выгрузку»
  • Исправлено: уведомления администратора от других плагинов теперь корректно отключаются на странице обзора медиа
  • Улучшено: повышена согласованность интерфейса администратора на всех страницах плагина

3.3.5

  • Исправлено: незначительные улучшения и исправления ошибок

3.3.4

  • Исправлено: незначительные улучшения и исправления ошибок
  • Обновлено: улучшена совместимость с WordPress

3.3.3

  • Исправлено: используется каталог исходного файла для удаления изображений разных размеров, что решает проблему, при которой миниатюры старых загрузок не удалялись корректно
  • Исправлено: устранена ошибка в функции зеркального удаления, обеспечивающая корректное удаление файлов из облака при удалении локальных файлов
  • Добавлено: уведомления о необходимости использования протокола HTTPS для доменных имен и URL конечных точек с целью повышения безопасности
  • Рефакторинг: стандартизирован подход к настройкам плагина для улучшения поддержки и читаемости кода
  • Оптимизировано: улучшена массовая обработка с помощью прямых SQL-запросов для повышения производительности
  • Исправлено: добавлена корректная проверка nonce и прав доступа для всех конечных точек AJAX с целью повышения безопасности
  • Исправлено: сохранение значений флажков во время очистки настроек, чтобы предотвратить их случайный сброс

3.3.2

  • Улучшена доступность и согласованность интерфейса администратора
  • Добавлен стиль RTL и условная загрузка для улучшенной поддержки локализации
  • Исправлены незначительные ошибки и внесены улучшения.

3.3.1

  • Исправлены незначительные ошибки и внесены улучшения.

3.3.0

  • Добавлен контейнер сервисов и архитектура с внедрением зависимостей
  • Улучшено тестирование соединения с более качественной обработкой ошибок
  • Исправлен процесс массовой выгрузки, чтобы предотвратить зависание операций
  • Улучшен интерфейс с более понятным выбором облачного провайдера
  • Улучшена документация с подробными инструкциями по настройке провайдеров

3.2.0

  • Добавлена поддержка облачного хранилища Wasabi
  • Повышена производительность и стабильность плагина
  • Исправление мелких ошибок

3.1.0

  • Исправлена и оптимизирована работа кнопки тестирования соединения
  • Исправлены незначительные ошибки и внесены улучшения.

3.0.0

  • Введён новый пользовательский интерфейс (UI) и улучшен пользовательский опыт (UX) на странице настроек.
  • Добавлена возможность выгружать и синхронизировать отредактированные изображения с облачным хранилищем.
  • Улучшена массовая выгрузка в облачное хранилище за счет исправления различных ошибок.
  • Реализовано ведение журнала ошибок для операций массовой выгрузки.
  • Добавлена возможность скачивания CSV-файла с подробными журналами для вложений, при выгрузке которых произошли ошибки.
  • Повышена общая безопасность плагина.
  • Исправлены различные проблемы, связанные с функционалом массовой выгрузки на JavaScript.
  • Улучшена обработка ошибок и уведомления для медиа-вложений в библиотеке.
  • Рефакторинг методов удаления вложений для повышения производительности и надежности.

2.1.0

  • Реализован php-scoper для изоляции пространств имён AWS PHP SDK, что предотвращает конфликты с другими плагинами, использующими разные версии тех же пакетов.
  • Исправлены незначительные ошибки и внесены улучшения.

2.0.3

  • Исправлены незначительные ошибки и внесены улучшения.

2.0.2

  • Отображение выгруженной версии изображений в содержимом поста после их выгрузки для ускорения загрузки и уменьшения расхода трафика.
  • Исправлено: атрибут srcset не отображался для изображений при включенном версионировании объектов.

2.0.1

  • Исправлены незначительные ошибки и внесены улучшения.

2.0.0

  • Рефакторинг кодовой базы Advanced Media Offloader.
  • Добавлены новые хуки действий для выполнения пользовательских операций до и после критических процессов.
  • Исправлена проблема совместимости с плагином Performance Lab для WordPress.
  • Исправлена ошибка при массовой выгрузке медиа-файлов.
  • Добавлена поддержка конфигурации конечной точки в стиле пути MinIO с использованием константы ADVMO_MINIO_PATH_STYLE_ENDPOINT.
  • Исправлены незначительные ошибки и внесены улучшения.

1.6.0

  • Рефакторинг кода для улучшения поддерживаемости и читаемости, что привело к повышению производительности плагина.
  • Исправлена проблема, из-за которой процесс массовой выгрузки становился неотзывчивым.
  • Добавлена кнопка для отмены процесса массовой выгрузки, предоставляющая пользователям больший контроль при передаче файлов.

1.5.2

  • Исправлена небольшая ошибка, связанная с путем существующих медиа-файлов при удалении локальных файлов.

1.5.1

  • Исправлены незначительные ошибки для улучшения процесса массовой выгрузки

1.5.0

  • Добавлена поддержка облачного хранилища Amazon S3
  • Повышена производительность и стабильность плагина
  • Исправление мелких ошибок

1.4.5

  • Исправлены незначительные ошибки с MinIO

1.4.4

  • Новая функция: пользовательский префикс пути для облачного хранилища
  • Исправление мелких ошибок

1.4.3

  • Добавление версии в путь корзины: автоматическое добавление уникальных временных меток к путям медиа-файлов, чтобы всегда предоставлялись актуальные версии
  • Добавлена функция «Зеркальное удаление»: автоматическое удаление локальных файлов после успешной загрузки в облачное хранилище.
  • Улучшение интерфейса настроек: улучшен пользовательский интерфейс страницы настроек.

1.4.2

  • Добавлена функция «Синхронизация локальных и облачных удалений» для автоматического удаления медиа из облачного хранилища при их удалении локально.
  • Повышена совместимость с WooCommerce: добавлена поддержка специфических размеров изображений WooCommerce и оптимизирована обработка изображений товаров.

1.4.1

  • Исправлены незначительные ошибки, связанные с массовой выгрузкой существующих медиа-файлов

1.4.0

  • Добавлена функция массовой выгрузки медиа-файлов (50 файлов за раз в бесплатной версии)
  • Исправлена проблема с путями подкаталогов для файлов, не являющихся изображениями
  • Улучшения интерфейса пользователя
  • Исправлены незначительные ошибки

1.3.0

  • Улучшения интерфейса пользователя
  • Исправлены незначительные ошибки

1.2.0

  • Добавлен MinIO в качестве нового облачного провайдера хранения данных
  • Введена опция выбора удаления локальных файлов после выгрузки в облачное хранилище
  • Реализованы улучшения интерфейса для страницы настроек плагина
  • Добавлен статус выгрузки в раздел сведений о вложении в библиотеке медиа
  • Исправлены незначительные ошибки

1.1.0

  • Улучшена кодовая база для исправления некоторых проблем
  • Добавлена поддержка DigitalOcean Spaces

1.0.0

  • Первый выпуск.