Как расширить список разрешенных типов файлов для загрузки в WordPress
Когда вы пишете пост на сайте, построенном на WordPress, и хотите загрузить медиа-файл, у вас не будет большого выбора среди разрешенных типов файлов. По умолчанию вы сможете загрузить только самые широко используемые форматы для изображений, аудио/видео и документов. Это сделано специально в целях безопасности. Загрузчик мультимедиа не позволяет, например, загружать файлы с расширением .exe
(правда, такое нужно только в очень ограниченных случаях). А что делать, если вам нужно загружать через медиа-загрузчик не очень популярный формат, и который не разрешен?
В этой статье мы рассмотрим данный вопрос и узнаем как можно добавить дополнительный(е) тип(ы) файлов для загрузки через Консоль сайта на WordPress.
Типы файлов, которые можно загружать через Консоль в WordPress
WordPress позволяет загружать наиболее распространенные типы файлы для картинок, аудио/видео, PDF, документы Microsoft Office и OpenOffice. С полным списком разрешенных типов вы можете ознакомиться на официальном Codex WordPress.
Добавление исключений для дополнительных типов файлов
Безопасность является основной причиной ограниченного списка типов файлов, которые администраторы сайта могут загружать через Консоль. Однако это не означает, что данный момент нельзя изменить. Чтобы это сделать, нужно совсем немного кода. Пример кода, который позволит добавить новый разрешенный тип и расширение файла в WordPress, представлен ниже в статье.
Допустим, например, что вам нужно добавить в список разрешенных для загрузки типов файлов файлы с расширением SVG (векторную графику). Для этого вам нужно открыть файл functions.php
в вашей активной теме и добавить этот небольшой код:
function spisok_razreshennih_tipov($mime_types){ $mime_types['svg'] = 'image/svg+xml'; //Добавляем расширение svg return $mime_types; } add_filter('upload_mimes', 'spisok_razreshennih_tipov', 1, 1);
Обратите внимание, что расширение типа файла указывается в качестве ключа в ассоциированном массиве $mime_types
, а MIME-тип (стандарт, описывающий передачу различных типов данных) – указывается в качестве его значения.
В данном примере расширение svg-файла имеет следующее значение MIME-типа – image/svg+xml
. С большим списком MIME-типов вы можете ознакомиться на Википедии.
Вы также можете добавить несколько типов файлов в один кусок кода, например:
function spisok_razreshennih_tipov($mime_types){ $mime_types['svg'] = 'image/svg+xml'; //Добавляем расширение svg $mime_types['psd'] = 'image/vnd.adobe.photoshop'; //Добавляем расширение psd (файлы Photoshop) return $mime_types; } add_filter('upload_mimes', 'spisok_razreshennih_tipov', 1, 1);
Вот и все! Надеемся, что данная статья пригодится вам и поможет увеличить список разрешенных типов файлов для загрузчика в Консоли своего сайта на WordPress. Чтобы прокомментировать статью, воспользуйтесь формой комментирования ниже.