Як розширити список дозволених типів файлів для завантаження в WordPress

Коли ви пишете пост на сайті, побудованому на WordPress, і хочете завантажити медіа-файл, у вас не буде великого вибору серед дозволених типів файлів. За замовчуванням ви зможете завантажити лише самі широко використовувані формати для зображень, аудіо/відео та документів. Це зроблено спеціально з метою безпеки. Завантажувач мультимедіа не дозволяє, наприклад, завантажувати файли з розширенням .exe (правда, таке потрібно тільки в дуже обмежених випадках). А що робити, якщо вам потрібно завантажувати через медіа-завантажувач не надто популярний формат, і який не дозволений?

У цій статті ми розглянемо дане питання та дізнаємося як можна додати додатковий(і) тип(и) файлів для завантаження через Консоль сайту на WordPress.

 

 

Типи файлів, які можна завантажувати через Консоль в WordPress

WordPress дозволяє завантажувати найбільш поширені типи файли для картинок, аудіо/відео, PDF, документи Microsoft Office та OpenOffice. З повним списком дозволених типів ви можете ознайомитися на офіційному Codex WordPress.

 

 

Додавання виключень для додаткових типів файлів

Безпека є основною причиною обмеженого списку типів файлів, які адміністратори сайту можуть завантажувати через Консоль. Однак це не означає, що даний момент не можна змінити. Щоб це зробити, потрібно зовсім небагато коду. Приклад коду, який дозволить додати новий дозволений тип і розширення файлу в WordPress, представлений нижче в статті.

Припустимо, наприклад, що вам потрібно додати в список дозволених для завантаження типів файлів файли з розширенням SVG (векторну графіку). Для цього вам потрібно відкрити файл functions.php в вашій активній темі і додати цей невеликий код:

function spisok_dozvolenih_tipiv($mime_types){
  $mime_types['svg'] = 'image/svg+xml'; //Додаємо розширення svg
  return $mime_types;
}
add_filter('upload_mimes', 'spisok_dozvolenih_tipiv', 1, 1);

 

 

Зверніть увагу, що розширення типу файлу вказується в якості ключа в асоційованому масиві $mime_types, а MIME-тип (стандарт, що описує передачу різних типів даних) – вказується в якості його значення.

 

В даному прикладі розширення svg-файлу має таке значення MIME-типу – image/svg+xml. З великим списком MIME-типів ви можете ознайомитися на Вікіпедії.

 

Ви також можете додати кілька типів файлів в один шматок коду, наприклад:

function spisok_dozvolenih_tipiv($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_dozvolenih_tipiv', 1, 1);

 

 

 

От і все! Сподіваємося, що дана стаття стане вам в нагоді та допоможе збільшити список дозволених типів файлів для завантажувача в Консолі свого сайту на WordPress. Щоб прокоментувати статтю, скористайтеся формою коментування нижче.

 

Recent Posts

WordPress як Headless CMS 🧠 | практично з REST API

WordPress роками був неперевершеним "монолітом": він відповідав і за зручну адмін-панель, і за збереження даних,…

5 днів ago

Тандем Nginx + Apache 🤝 Як поєднати швидкість та гнучкість

У світі веб-серверів часто говорять про протистояння Nginx vs Apache. Але що, якби я сказав…

6 днів ago

Що таке Apache HTTP Server: 📜 Надійний ветеран веб-серверів

Коли я починав свій шлях у веб-розробці, питання "який веб-сервер використовувати?" практично не стояло. Відповідь…

7 днів ago

Що таке Nginx: чому він швидший за Apache? 🚀 | Інструкція + Конфіги

Коли мова заходить про веб-сервери, два імені завжди на слуху: Apache та Nginx. Apache —…

1 тиждень ago

Знайомство з Docker для веб-розробника 🐳 | Встановлення та основи

У світі веб-розробки ми постійно стикаємося з проблемою: "А в мене на комп'ютері все працює!".…

1 тиждень ago

Навіщо веб-розробнику віртуальна машина (VM) 🖥️

На зорі моєї кар'єри веб-розробника все було відносно просто: встановив локальний сервер (пам'ятаєте Denwer?), поклав…

1 тиждень ago