WordPress Notes WPDream

Как удалить обновления WooCommerce через functions.php без плагинов

Диагностика проблемы: зачем отключать обновления WooCommerce?

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

Проверить, что WooCommerce предлагает обновления, можно на странице Консоль > Обновления в админке WordPress или в разделе «Плагины».

Пошаговое решение: отключаем проверки обновлений WooCommerce через functions.php

Блокируем проверку обновлений WooCommerce в ядре WordPress

Для отключения проверок обновлений WooCommerce добавьте следующий код в файл functions.php активной темы или в подключаемый кастомный плагин:

add_filter('site_transient_update_plugins', function($value) {
    if (isset($value->response['woocommerce/woocommerce.php'])) {
        unset($value->response['woocommerce/woocommerce.php']);
    }
    return $value;
});

Этот фильтр удалит WooCommerce из списка доступных обновлений.

Отключаем уведомление об обновлении WooCommerce в админке

Чтобы скрыть уведомления, дополнительно можно добавить:

add_action('admin_menu', function() {
    remove_action('admin_notices', 'update_nag', 3);
});

Однако этот код отключит все уведомления обновлений — будьте осторожны, если нужна выборочная блокировка.

Запрет автоматических обновлений WooCommerce

Если WooCommerce обновляется автоматически через механизмы WordPress, можно полностью запретить автообновления плагинов и выбрать исключения:

add_filter('auto_update_plugin', function($update, $item) {
    if ($item->plugin === 'woocommerce/woocommerce.php') {
        return false; // Запрет автообновления WooCommerce
    }
    return $update;
}, 10, 2);

Проверка результата после внедрения

  • Зайдите в Консоль > Обновления — WooCommerce не должен отображаться в списке обновляемых плагинов.
  • На странице плагинов не должно быть уведомлений о доступных обновлениях WooCommerce.
  • При выполнении wp plugin update woocommerce из терминала должна выводиться ошибка или сообщение, что обновление не доступно (если wp-cli используется).

Частые ошибки и как исправить

  • Код не работает после добавления в functions.php: Возможно, код был добавлен в дочернюю тему, которая не активна, или в тему, которая перезаписывает фильтры. Проверьте, что active theme — та, где вы добавили код.
  • Автообновления WooCommerce продолжаются: Убедитесь, что нет других плагинов, которые принудительно включают автообновления (например, Easy Updates Manager). Проверьте их настройки.
  • Обновления WooCommerce все равно отображаются в админке: Кэш админки или transient данные могут сохранять старую информацию. Очистите кэш через WP-CLI командой wp transient delete --all или вручную.

Практические советы по безопасности и производительности

  • Отключение обновлений WooCommerce увеличивает риск уязвимостей. Всегда тестируйте обновления на staging-среде перед применением на продакшене.
  • Используйте систему контроля версий для хранения изменений в functions.php, чтобы быстро откатить изменения.
  • Регулярно очищайте transient данные, чтобы админка показывала актуальную информацию по обновлениям.
  • Для более продвинутого контроля обновлений рассмотрите использование плагина Clearfy Pro (https://wpshop.ru/plugins/clearfy?source=wpdream.ru&medium=article&campaign=kak-udalit-obnovleniya-woocommerce-cherez-functions-php), который позволяет гибко управлять автообновлениями без кода.

Сравнение способов отключения обновлений WooCommerce

МетодПлюсыМинусы
Код в functions.phpБыстро, без плагинов, полный контрольРиск ошибочного удаления, нужно навыки кодирования
Плагины (Clearfy, Easy Updates Manager)Удобный интерфейс, дополнительные функцииЗависимость от плагинов, нагрузка на сайт
Игнорирование обновленийПростотаРиск безопасности, нет контроля
×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее