Как установить ограничение на размер загружаемых файлов в WordPress

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

Почему важно ограничивать размер загружаемых файлов в WordPress

Большие файлы занимают много дискового пространства и могут замедлять работу сайта. Кроме того, загрузка очень больших файлов может привести к превышению лимитов PHP, что вызовет ошибки и ухудшит пользовательский опыт. Ограничение размера поможет:

  • Снизить нагрузку на сервер.
  • Предотвратить случайную загрузку слишком больших файлов пользователями.
  • Защитить сайт от потенциальных DoS-атак через загрузку огромных файлов.

Как узнать текущий лимит загрузки файлов в WordPress и PHP

Для начала полезно посмотреть, какой лимит установлен на вашем сервере. Чтобы это сделать, можно воспользоваться функцией phpinfo() или посмотреть настройки в админке WordPress.

Например, создайте файл info.php с содержимым:

<?php phpinfo(); ?>

Зайдите на него через браузер и найдите параметры upload_max_filesize и post_max_size. Именно они определяют максимально допустимый размер загружаемых файлов.

Также в панели WordPress при попытке загрузить файл вы увидите текущий лимит в разделе «Медиафайлы».

Как изменить лимит загрузки файлов через настройки сервера

Если у вас есть доступ к серверу, можно увеличить или уменьшить лимит следующими способами:

1. Изменение файла php.ini

Найдите или создайте файл php.ini в корне сайта или в настройках PHP и добавьте или измените параметры:

upload_max_filesize = 5M
post_max_size = 5M
max_execution_time = 300

Значение 5M — это пример ограничения в 5 мегабайт, вы можете поставить нужное значение.

2. Изменение через .htaccess (если PHP в режиме модуля Apache)

php_value upload_max_filesize 5M
php_value post_max_size 5M
php_value max_execution_time 300

3. Изменение через файл wp-config.php

Добавьте в wp-config.php следующие строки, чтобы задать лимит для WordPress:

@ini_set('upload_max_filesize', '5M');
@ini_set('post_max_size', '5M');
@ini_set('max_execution_time', '300');

Ограничение размера файлов программно в WordPress

Иногда нужно задать ограничение не только на уровне PHP, но и внутри самого WordPress — например, для определённых форм или кастомных загрузок. Для этого можно использовать фильтр upload_size_limit.

Пример функции для ограничения загрузки до 2 Мб:

function wpcore_limit_upload_size( $size ) {
    return 2 * 1024 * 1024; // 2 Мб в байтах
}
add_filter( 'upload_size_limit', 'wpcore_limit_upload_size' );

Эту функцию можно добавить в файл functions.php вашей темы или в собственный плагин.

Ограничение размера загрузки для конкретной роли пользователя

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

function wpcore_limit_upload_for_subscribers( $size ) {
    if ( current_user_can('subscriber') ) {
        return 1024 * 1024; // 1Мб
    }
    return $size;
}
add_filter( 'upload_size_limit', 'wpcore_limit_upload_for_subscribers' );

Использование плагинов для контроля размера загруженных файлов

Если не хочется лезть в код и настройки сервера, можно установить плагин, который позволит задать ограничения через административную панель.

1. WP Maximum Upload File Size

Очень простой плагин, который выводит текущий лимит загрузки и позволяет изменить его вручную.

2. File Upload Types by WPForms

Плагин позволяет не только ограничить размер, но и контролировать типы файлов, что тоже важно для безопасности.

3. Clearfy Pro

В продвинутых настройках Clearfy Pro можно установить ограничения для загрузок, а также оптимизировать работу сайта в целом. Подробнее о Clearfy Pro — на сайте WPShop.

Практические рекомендации и советы

  • Всегда проверяйте лимиты PHP перед изменением, чтобы не возникало конфликтов.
  • Старайтесь устанавливать ограничения, адекватные вашей задаче и типу контента.
  • Используйте комбинированный подход: настройте лимит на сервере и добавьте фильтр в WordPress для дополнительного контроля.
  • Если используете плагин, регулярно обновляйте его и проверяйте совместимость с вашей версией WordPress.

Таким образом, ограничение размера загружаемых файлов — это важный шаг для поддержания стабильной и безопасной работы сайта на WordPress. Выбирайте подходящий способ в зависимости от ваших прав доступа и целей.

Изменение URL типа записи в WordPress без потери SEO и редиректов
11.12.2025
Как создать автоматическое отправление email при новом комментарии в WordPress
21.02.2026
WooCommerce: как автоматически удалять старые нераскрытые заказы по дате
19.05.2026
WooCommerce: как автоматически удалять неактивные вариации товаров без плагинов
04.06.2026
Как использовать REST API для создания настроек в WordPress
08.12.2025