Дозволяє додати/видалити типи файлів для завантаження на сайт (MIME-типи файлів, дозволених до завантаження).
MIME-типи файлів При завантаженні файлів .rar
та .swf
інших видається повідомлення:
«Файл не вдалося завантажити через помилку. Тип файлу не підходить з міркувань безпеки».
Щоб обійти це попередження, потрібно додати в білий список MIME-тип файлу, що завантажується.
Список встановлених MIME-типів [jpg | jpeg | jpe ] => image/jpeg
[gif ] => image/gif
[png ] => image/png
[bmp ] => image/bmp
[tiff|tif ] => image/tiff
[ico ] => image/x-icon
[asf|asx ] => video/x-ms-asf
[wmv ] => video/x-ms-wmv
[wmx ] => video/x-ms-wmx
[wm ] => video/x-ms-wm
[avi ] => video/avi
[divx ] => video/divx
[flv ] => video/x-flv
[mov|qt ] => video/quicktime
[mpeg|mpg|mpe ] => video/mpeg
[mp4|m4v ] => video/mp4
[ogv ] => video/ogg
[webm ] => video/webm
[mkv ] => video/x-matroska
[3gp|3gpp ] => video/3 gpp
[3g2|3gp2 ] => video/3 gpp2
[txt|asc|c|cc|h|srt ] => text/plain
[csv ] => text/csv
[tsv ] => text/tab-separated-values
[ics ] => text/calendar
[rtx ] => text/richtext
[css ] => text/css
[htm|html ] => text/html
[vtt ] => text/vtt
[dfxp ] => application/ttaf+xml
[mp3|m4a|m4b ] => audio/mpeg
[ra|ram ] => audio/x-realaudio
[wav ] => audio/wav
[ogg|oga ] => audio/ogg
[mid|midi ] => audio/midi
[wma ] => audio/x-ms-wma
[wax ] => audio/x-ms-wax
[mka ] => audio/x-matroska
[rtf ] => application/rtf
[js ] => application/javascript
[pdf ] => application/pdf
[class ] => application/java
[tar ] => application/x-tar
[zip ] => application/zip
[gz|gzip ] => application/x-gzip
[rar ] => application/rar
[7z ] => application/x-7 z-compressed
[psd ] => application/octet-stream
[xcf ] => application/octet-stream
[doc ] => application/msword
[pot|pps|ppt ] => application/vnd.ms-powerpoint
[wri ] => application/vnd.ms-write
[xla|xls|xlt|xlw ] => application/vnd.ms-excel
[mdb ] => application/vnd.ms-access
[mpp ] => application/vnd.ms-project
[docx ] => application/vnd.openxmlformats-officedocument.wordprocessingml.document
[docm ] => application/vnd.ms-word.document.macroEnabled.12
[dotx ] => application/vnd.openxmlformats-officedocument.wordprocessingml.template
[dotm ] => application/vnd.ms-word.template.macroEnabled.12
[xlsx ] => application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
[xlsm ] => application/vnd.ms-excel.sheet.macroEnabled.12
[xlsb ] => application/vnd.ms-excel.sheet.binary.macroEnabled.12
[xltx ] => application/vnd.openxmlformats-officedocument.spreadsheetml.template
[xltm ] => application/vnd.ms-excel.template.macroEnabled.12
[xlam ] => application/vnd.ms-excel.addin.macroEnabled.12
[pptx ] => application/vnd.openxmlformats-officedocument.presentationml.presentation
[pptm ] => application/vnd.ms-powerpoint.presentation.macroEnabled.12
[ppsx ] => application/vnd.openxmlformats-officedocument.presentationml.slideshow
[ppsm ] => application/vnd.ms-powerpoint.slideshow.macroEnabled.12
[potx ] => application/vnd.openxmlformats-officedocument.presentationml.template
[potm ] => application/vnd.ms-powerpoint.template.macroEnabled.12
[ppam ] => application/vnd.ms-powerpoint.addin.macroEnabled.12
[sldx ] => application/vnd.openxmlformats-officedocument.presentationml.slide
[sldm ] => application/vnd.ms-powerpoint.slide.macroEnabled.12
[onetoc|onetoc2|onetmp|onepkg ] => application/onenote
[oxps ] => application/oxps
[xps ] => application/vnd.ms-xpsdocument
[odt ] => application/vnd.oasis.opendocument.text
[odp ] => application/vnd.oasis.opendocument.presentation
[ods ] => application/vnd.oasis.opendocument.spreadsheet
[odg ] => application/vnd.oasis.opendocument.graphics
[odc ] => application/vnd.oasis.opendocument.chart
[odb ] => application/vnd.oasis.opendocument.database
[odf ] => application/vnd.oasis.opendocument.formula
[wp|wpd ] => application/wordperfect
[key ] => application/vnd.apple.keynote
[numbers ] => application/vnd.apple.numbers
[pages ] => application/vnd.apple.pages Використання add_filter ( 'upload_mimes' , 'wp_kama_upload_mimes_filter' , 10 , 2 );
function wp_kama_upload_mimes_filter ( $t , $user ) {
return $t ;
}
$t
(масив) Дані Mime типів у вигляді масиву. Повернення функції wp_get_mime_types() .
Масив буде містити елементи з ключем у відео регулярки для мімі типу, наприклад, 'jpg|jpeg|jpe'
і значенням – сам міме тип, наприклад 'image/jpeg'
.
$user
(число/WP_User/null)
ID або об’єкт користувача. Якщо вказати
null
, буде взято поточний користувач. Приклади #1 Дозволяємо завантаження CSV файлів
add_filter ( 'upload_mimes' , 'add_csv_type' );
function add_csv_type ( $mime_types ) {
$mime_types ['csv' ] = 'text/csv' ;
return $mime_types ;
} #2 Дозволимо адмінам завантажувати будь-які файли без перевірок
Якщо вказати константу ALLOW_UNFILTERED_UPLOADS у плагіні або файлі wp-config.php , адміністратори (користувачі з правом unfiltered_upload ) зможуть завантажувати файли будь-яких типів:
define ( 'ALLOW_UNFILTERED_UPLOADS' , true );Докладніше читайте тут .
Додати свій приклад