Как разрешить загрузку файлов в WordPress?

Как разрешить загрузку файлов в WordPress?

Чтобы разрешить загрузку файлов на сайт WordPress не разрешающую по стандарту, нужно добавить определенный код в действующую тему, в зависимости от Вашей потребности.

Заходим по FTP либо через ПУ в Файловый каталог, где хранится сайт и ищем файл functions.php в Вашей теме, может хранится примерно в следующей директории: /ваш-сайт/wp-content/themes/ваша-тема/functions.php

Вот код добавляющий поддержку всех основных форматов архивов, которые может потребоваться загружать в WordPress: .zip .rar .7z .tar .gz .bz2 .xz .lz .cab .iso

function custom_mime_types($mimes) {
    $mimes['zip']  = 'application/zip';
    $mimes['rar']  = 'application/x-rar-compressed';
    $mimes['7z']   = 'application/x-7z-compressed';
    $mimes['tar']  = 'application/x-tar';
    $mimes['gz']   = 'application/gzip';
    $mimes['bz2']  = 'application/x-bzip2';
    $mimes['xz']   = 'application/x-xz';
    $mimes['lz']   = 'application/x-lzip';
    $mimes['cab']  = 'application/vnd.ms-cab-compressed';
    $mimes['iso']  = 'application/x-iso9660-image';
    return $mimes;
}
add_filter('upload_mimes', 'custom_mime_types');

Вот код для WordPress, добавляющий поддержку всех популярных форматов изображений: .jpg .jpeg .png .gif .bmp .webp .svg .ico .tif .tiff .heic .heif .avif

function custom_image_mime_types($mimes) {
    $mimes['jpg']  = 'image/jpeg';
    $mimes['jpeg'] = 'image/jpeg';
    $mimes['png']  = 'image/png';
    $mimes['gif']  = 'image/gif';
    $mimes['bmp']  = 'image/bmp';
    $mimes['webp'] = 'image/webp';
    $mimes['svg']  = 'image/svg+xml';
    $mimes['ico']  = 'image/vnd.microsoft.icon';
    $mimes['tif']  = 'image/tiff';
    $mimes['tiff'] = 'image/tiff';
    $mimes['heic'] = 'image/heic';
    $mimes['heif'] = 'image/heif';
    $mimes['avif'] = 'image/avif';
    return $mimes;
}
add_filter('upload_mimes', 'custom_image_mime_types');

Вот код WordPress, добавляющий поддержку основных видеоформатов: .mp4 .mov .m4v .wmv .avi .mpg .mpeg .webm .ogv .3gp .3g2 .flv

function custom_video_mime_types($mimes) {
    $mimes['mp4']  = 'video/mp4';
    $mimes['m4v']  = 'video/x-m4v';
    $mimes['mov']  = 'video/quicktime';
    $mimes['wmv']  = 'video/x-ms-wmv';
    $mimes['avi']  = 'video/x-msvideo';
    $mimes['mpg']  = 'video/mpeg';
    $mimes['mpeg'] = 'video/mpeg';
    $mimes['webm'] = 'video/webm';
    $mimes['ogv']  = 'video/ogg';
    $mimes['3gp']  = 'video/3gpp';
    $mimes['3g2']  = 'video/3gpp2';
    $mimes['flv']  = 'video/x-flv';
    return $mimes;
}
add_filter('upload_mimes', 'custom_video_mime_types');

Помимо архивов, изображений, и видео, есть ещё несколько полезных категорий файлов, которые можно разрешить для загрузки в WordPress:


📄 Документы

$mimes['pdf'] = 'application/pdf';
$mimes['doc'] = 'application/msword';
$mimes['docx'] = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
$mimes['xls'] = 'application/vnd.ms-excel';
$mimes['xlsx'] = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
$mimes['ppt'] = 'application/vnd.ms-powerpoint';
$mimes['pptx'] = 'application/vnd.openxmlformats-officedocument.presentationml.presentation';
$mimes['odt'] = 'application/vnd.oasis.opendocument.text';
$mimes['ods'] = 'application/vnd.oasis.opendocument.spreadsheet';
$mimes['txt'] = 'text/plain';
$mimes['rtf'] = 'application/rtf';

🎵 Аудио

$mimes['mp3']  = 'audio/mpeg';
$mimes['wav']  = 'audio/wav';
$mimes['ogg']  = 'audio/ogg';
$mimes['oga']  = 'audio/ogg';
$mimes['m4a']  = 'audio/mp4';
$mimes['flac'] = 'audio/flac';
$mimes['aac']  = 'audio/aac';
$mimes['wma']  = 'audio/x-ms-wma';

💻 Код / исходники

(для разработчиков, дизайнеров и программистов)

$mimes['html'] = 'text/html';
$mimes['css']  = 'text/css';
$mimes['js']   = 'application/javascript';
$mimes['json'] = 'application/json';
$mimes['xml']  = 'application/xml';
$mimes['php']  = 'application/x-httpd-php'; // ⚠️ может быть запрещено из соображений безопасности

🖥️ Шрифты

(если вы работаете с дизайном)

$mimes['ttf']  = 'font/ttf';
$mimes['otf']  = 'font/otf';
$mimes['woff'] = 'font/woff';
$mimes['woff2'] = 'font/woff2';

🧩 3D/VR и CAD-файлы

(если работаете с 3D-моделями)

$mimes['stl'] = 'model/stl';
$mimes['obj'] = 'model/obj';
$mimes['fbx'] = 'application/octet-stream';
$mimes['glb'] = 'model/gltf-binary';
$mimes['gltf'] = 'model/gltf+json';