Описание media_send_to_editor
— Filter
Хук media_send_to_editor позволяет изменять HTML-код, который вставляется в редактор при добавлении медиафайлов. Он срабатывает, когда медиафайл отправляется в редактор через кнопку ‘Вставить в запись’ и позволяет настраивать формат и атрибуты медиа-контента
Примеры использования
Пример изменения HTML-кода для изображения, добавляемого в пост:
add_filter('media_send_to_editor', function($html, $id, $attachment) {
// Изменяем HTML-код для добавления класса 'custom-image'
$html = str_replace('class="', 'class="custom-image ', $html);
return $html;
});
В этом примере мы добавляем класс ‘custom-image’ к изображению при его вставке в редактор
Пример изменения URL медиафайла:
add_filter('media_send_to_editor', function($html, $id, $attachment) {
// Изменяем URL изображения на кастомный
$custom_url = 'https://example.com/custom-image.jpg';
$html = str_replace(wp_get_attachment_url($id), $custom_url, $html);
return $html;
});
Здесь мы заменяем стандартный URL изображения на кастомный
Пример добавления атрибутов к видео при вставке:
add_filter('media_send_to_editor', function($html, $id, $attachment) {
// Добавляем атрибут 'controls' к видео
if (strpos($html, 'video') !== false) {
$html = str_replace('
В этом примере мы добавляем атрибут ‘controls’ ко всем видеофайлам
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо модифицировать HTML-код медиафайла перед его вставкой в редактор
– Производительность
Хук обычно не вызывает значительных проблем с производительностью, но стоит следить за объемами обрабатываемых данных
– Предупреждения
Убедитесь, что изменения не нарушают функциональность вставки медиафайлов
Альтернативы
Тип: filter
Этот хук позволяет изменять данные перед загрузкой медиафайлов
Используйте его, если нужно изменить данные файла перед его загрузкой на сервер