WooCommerce: как ограничить оформление заказа только для зарегистрированных пользователей

|

Диагностика проблемы: почему стоит ограничить оформление заказа для гостей

В стандартной установке WooCommerce покупатели могут оформить заказ без регистрации (гостевой режим). Это удобно, но в некоторых случаях важно, чтобы заказ могли оформить только зарегистрированные пользователи. Например, для B2B-сайтов, магазинов с индивидуальными скидками, или для точного учета клиентов.

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

Проверка текущих настроек WooCommerce

Перейдите в админке WordPress в раздел WooCommerce > Настройки > Аккаунты и конфиденциальность и убедитесь, что отключены опции:

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

Пошаговое решение: запретить оформление заказа для гостей через код

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

add_action('template_redirect', 'wc_restrict_checkout_to_logged_in_users');
function wc_restrict_checkout_to_logged_in_users() {
    if (is_checkout() && !is_user_logged_in()) {
        wp_safe_redirect(wp_login_url(wc_get_checkout_url()));
        exit;
    }
}

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

Дополнительно: скрыть кнопку «Оформить заказ» для гостей

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

add_filter('woocommerce_cart_needs_checkout_button', 'disable_checkout_button_for_guests');
function disable_checkout_button_for_guests($needs_button) {
    if (!is_user_logged_in()) {
        return false;
    }
    return $needs_button;
}

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

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

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

Сравнение способов ограничения оформления заказа

СпособОписаниеПлюсыМинусы
Настройки WooCommerce Отключение гостевого оформления в настройках Простота, не требует кода Не всегда полностью блокирует обход
Код с редиректом Перенаправление гостей с /checkout/ на страницу входа Гарантированный запрет, гибкость Требуется базовый PHP, возможны конфликты
Плагины для ограничения доступа Использование плагинов типа "Restrict Content" на страницу оформления Дополнительные функции контроля доступа Может замедлять сайт, зависит от плагина
Как автоматически удалять старые чужие сайты из базы данных WordPress
13.01.2026
WooCommerce: как автоматически удалять отменённые и неактивные заказы
27.06.2026
WooCommerce: как автоматически удалять отменённые и неактивные заказы
03.07.2026
Как создать подписку на email в WordPress без плагинов: практическое руководство
21.11.2025
WooCommerce: как автоматически возвращать товар в склад после отмены заказа
24.04.2026
×
Сделай свой сайт крутым!

Скидка -20% на премиум плагины WordPress

Выбрать плагин сейчас ⋙