Вордпресс по умолчанию не разрешает загружать файлы в формате SVG. Разбираемся, как исправить это недоразумение.

Научно-технический прогресс с каждым годом порождает на свет все новые и новые устройства. Интернет приходит туда, где всего несколько лет назад это казалось чем-то запредельным. Естественно, диапазон размеров дисплеев интернет-устройств становится все шире и шире. Кроме этого, растут и плотность пикселей, и разрешения дисплеев: Retina, 4K, 5K… Я думаю, прогресс на этом не остановится.
Что же делать веб-дизайнеру, как предусмотреть все возможные варианты отображения сайта? На помощь приходит адаптивная верстка и векторная графика. Которые вкупе творят чудеса абсолютно на любых разрешениях и плотностях. С адаптивной версткой и так все понятно — она либо есть, либо нет. А вот с загрузкой в WordPress векторной графики есть некоторые нюансы. Например, популярный формат SVG с помощью стандартного загрузчика в WordPress загрузить не получится. По причинам безопасности, он просто не даст вам этого сделать.
SVG (от англ. Scalable Vector Graphics — масштабируемая векторная графика) — язык разметки масштабируемой векторной графики, созданный Консорциумом Всемирной паутины (W3C) и входящий в подмножество расширяемого языка разметки XML, предназначен для описания двумерной векторной и смешанной векторно/растровой графики в формате XML.
Проблема решается очень просто. Открываем functions.php вашей активной темы и где-нибудь в конце вставляем такой код:
function my_myme_types($mime_types){ $mime_types['svg'] = 'image/svg+xml'; // поддержка SVG return $mime_types; } add_filter('upload_mimes', 'my_myme_types', 1, 1);
Если вы вдруг захотите разрешить еще и загрузку PSD, тогда можно немного усложнить код.
function my_myme_types($mime_types){ $mime_types['svg'] = 'image/svg+xml'; // поддержка SVG $mime_types['psd'] = 'image/vnd.adobe.photoshop'; // поддержка PSD return $mime_types; } add_filter('upload_mimes', 'my_myme_types', 1, 1);
Можно заметить, функция достаточно проста и список допустимых типов файлов можно с легкостью расширять. К примеру, можно разрешить:
- 7-Zip — application/x-7z-compressed;
- Adobe Portable Document Format — application/pdf;
- BitTorrent — application/x-bittorrent;
- M3U (Multimedia Playlist) — audio/x-mpegurl;
- M4v — video/x-m4v;
- Microsoft Windows Media Video — video/x-ms-wmv;
- MPEG-4 Video — video/mp4;
- XML (Extensible Markup Language) — application/xml.
Список всех MIME-типов можно посмотреть здесь, например.
Подпишитесь на мой телеграм и первыми получайте новые материалы, в том числе которых нет на сайте.
плагин. некоторые сервера неправильно переопределяют MIME тип загружаемого файла
После этого все работает отлично!