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

Диагностика проблемы: почему стандартная страница корзины WooCommerce не всегда подходит

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

Как найти шаблон страницы корзины для редактирования

WooCommerce использует шаблоны из директории woocommerce/templates/cart. Основной файл — cart.php. Чтобы изменить страницу, не ломая возможность обновления плагина, копируем нужный шаблон в тему:

wp-content/themes/ваша_тема/woocommerce/cart/cart.php

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

Пошаговое изменение содержимого страницы корзины через хуки

1. Удаляем стандартный вывод заголовка корзины

remove_action('woocommerce_before_cart', 'woocommerce_output_all_notices', 10);

2. Добавляем собственный заголовок и описание

add_action('woocommerce_before_cart', 'custom_cart_header');
function custom_cart_header() {
    echo '<h2>Ваша корзина — проверим состав</h2><p>Проверьте товары перед оформлением заказа.</p>';
}

3. Изменяем порядок колонок таблицы корзины

Для изменения колонок используем фильтр woocommerce_cart_item_name или переопределяем шаблон cart/cart.php.

add_filter('woocommerce_cart_item_name', 'custom_cart_item_name', 10, 3);
function custom_cart_item_name($product_name, $cart_item, $cart_item_key) {
    // Добавим артикул перед названием товара
    $product = $cart_item['data'];
    $sku = $product->get_sku();
    if ($sku) {
        $product_name = '<strong>Артикул: ' . $sku . '</strong> – ' . $product_name;
    }
    return $product_name;
}

4. Скрываем поле купона через CSS или удаляем форму купона программно

Чтобы убрать форму купона с корзины, добавьте в functions.php:

remove_action('woocommerce_before_cart', 'woocommerce_cart_coupon_form', 10);

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

  1. Откройте страницу корзины на сайте.
  2. Проверьте, что заголовок и описание изменились на кастомные.
  3. В названии товара должен отображаться артикул (если есть).
  4. Форма ввода купона отсутствует.
  5. Проверьте, что функциональность корзины не сломана (изменение количества, удаление товаров работают).

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

  • Не видны изменения после правок — очистите кэш сайта и браузера.
  • Функции в functions.php вызывают ошибки — проверьте синтаксис PHP, используйте error_log или WP_DEBUG для диагностики.
  • Вывод артикулов пустой — убедитесь, что у товаров заполнено поле SKU.
  • Удаление формы купона не сработало — возможно, в теме или другом плагине форма добавлена повторно, проверьте с помощью remove_action с правильным приоритетом.

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

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

Сравнение способов модификации страницы корзины WooCommerce

МетодПлюсыМинусыКогда использовать
Редактирование шаблона cart.phpПолный контроль над выводомТребует обновления после обновления WooCommerceКардинальные изменения дизайна и структуры
Использование хуков и фильтровОбновления не ломают код, гибкоОграничено возможностями хуковДобавление или изменение отдельных элементов
Плагины для кастомизации корзиныБыстро и без кодаМогут замедлять сайт и конфликтоватьДля пользователей без навыков программирования
Как добавить автоматическое обновление тем и плагинов в WordPress
15.04.2026
Как использовать хуки WooCommerce для модификации корзины
22.12.2025
Как создать автоматический отзыв с подтверждением в WordPress
19.03.2026
Как добавить автоматическое сохранение в редактор Gutenberg в WordPress
10.11.2025
Как изменить роли и права пользователей в WordPress через код
30.03.2026