Михаил Базаров Разработка на 1С-Битрикс Михаил Базаров

Как сделать висячую корзину на всех страницах сайта

Вопрос задан: 26 июня 2026 в 11:00 | Просмотров: 15 Использованные MCP инструменты: searchDocs, liveApiListComponents, liveApiFindFunction, liveApiFindByNamespace, liveApiGetDocResource, liveApiFindByReflection, liveApiGetModuleClasses

Задайте свой вопрос — Работает AI в связке с MCP сервером. Перепроверяйте важную информацию.

Для реализации «висячей» (плавающей/прилипающей) корзины на всех страницах сайта в 1С-Битрикс используется стандартный компонент bitrix:sale.basket.line. Он показывает миниатюру корзины (иконку + количество товаров + сумму) и чаще всего размещается в шапке сайта. Ниже — пошаговая инструкция.

1. Подключение компонента в шаблон сайта

Откройте файл шаблона вашего сайта, обычно это /bitrix/templates/ВАШ_ШАБЛОН/header.php (или /local/templates/ВАШ_ШАБЛОН/header.php). В нужное место вставьте вызов:
<?php
$APPLICATION->IncludeComponent(
    "bitrix:sale.basket.line",
    "",
    Array(
        "HIDE_ON_BASKET_PAGES" => "N",
        "PATH_TO_BASKET" => "/personal/cart/",
        "PATH_TO_PERSONAL" => "/personal/",
        "PATH_TO_ORDER" => "/personal/order/make/",
        "PATH_TO_PROFILE" => "/personal/",
        "PATH_TO_REGISTER" => "/login/",
        "POSITION_FIXED" => "Y",
        "POSITION_HORIZONTAL" => "right",
        "POSITION_VERTICAL" => "top",
        "SHOW_AUTHOR" => "N",
        "SHOW_DELAY" => "N",
        "SHOW_EMPTY_PRODUCTS" => "Y",
        "SHOW_IMAGE" => "Y",
        "SHOW_NOTAVAIL" => "N",
        "SHOW_NUM_PRODUCTS" => "Y",
        "SHOW_PERSONAL_LINK" => "N",
        "SHOW_PRICE" => "Y",
        "SHOW_PRODUCTS" => "Y",
        "SHOW_REGISTRATION" => "N",
        "SHOW_SUBSCRIBE" => "N",
        "SHOW_SUMMARY" => "Y",
        "SHOW_TOTAL_PRICE" => "Y",
    )
);
?>

2. Ключевые параметры для висячей корзины

  • POSITION_FIXED = Y — фиксированное положение (корзина «прилипает» к окну браузера).
  • POSITION_HORIZONTAL — left / right / center (горизонтальное позиционирование).
  • POSITION_VERTICAL — top / bottom / center (вертикальное позиционирование).
  • HIDE_ON_BASKET_PAGES = N — не скрывать корзину на странице самой корзины.
  • SHOW_PRODUCTS = Y — показывать список товаров при наведении.
  • SHOW_TOTAL_PRICE = Y — выводить итоговую сумму.
  • SHOW_NUM_PRODUCTS = Y — выводить количество товаров.
  • PATH_TO_BASKET — путь к корзине (например, /personal/cart/).
  • PATH_TO_ORDER — путь к оформлению заказа.

3. CSS-стилизация для плавающей корзины

Компонент sale.basket.line при POSITION_FIXED = Y уже добавляет CSS-классы для фиксированного позиционирования. Вы можете переопределить их в вашем styles.css шаблона:
.bx-basket-fixed {
    position: fixed;
    z-index: 1000;
    /* если не устраивает стандартное позиционирование — переопределите */
}
.bx-basket-fixed.top.right {
    top: 20px;
    right: 20px;
}
.bx-basket-fixed.top.left {
    top: 20px;
    left: 20px;
}
.bx-basket-fixed.bottom.right {
    bottom: 20px;
    right: 20px;
}
.bx-basket-fixed.bottom.left {
    bottom: 20px;
    left: 20px;
}

4. Вариант: корзина в шапке (статическая, на всех страницах)

Если вам не нужно фиксированное положение, а просто нужно показывать корзину на всех страницах в шапке, уберите параметр POSITION_FIXED (или установите N). Компонент встраивается в структуру шапки штатно.
<?php
$APPLICATION->IncludeComponent(
    "bitrix:sale.basket.line",
    "",
    Array(
        "PATH_TO_BASKET" => "/personal/cart/",
        "PATH_TO_ORDER" => "/personal/order/make/",
        "SHOW_NUM_PRODUCTS" => "Y",
        "SHOW_TOTAL_PRICE" => "Y",
        "SHOW_PRODUCTS" => "Y",
    )
);
?>

5. Кастомизация шаблона компонента

Чтобы изменить внешний вид корзины, скопируйте шаблон компонента из /bitrix/components/bitrix/sale.basket.line/templates/ в /bitrix/templates/ВАШ_ШАБЛОН/components/bitrix/sale.basket.line/ и отредактируйте:
  • template.php — HTML-разметка корзины.
  • style.css — стили.
  • script.js — скрипты (обновление через AJAX).

6. Альтернатива: кастомная реализация через API корзины

Если компонент не подходит, можно получить данные корзины напрямую через ORM модуля sale:
<?php
use Bitrix\Sale\Basket;
use Bitrix\Main\Loader;

Loader::includeModule('sale');

$basket = Basket::loadItemsForFUser(\Bitrix\Sale\Fuser::getId(), SITE_ID);
$count = $basket->count();
$price = $basket->getPrice();
?>
<div class="my-custom-cart">
    Корзина: <?= $count ?> товаров на <?= CurrencyFormat($price, 'RUB') ?>
</div>

Итог

Самый простой и правильный путь — использовать стандартный компонент bitrix:sale.basket.line с параметром POSITION_FIXED = Y, разместив его вызов в файле header.php вашего шаблона сайта. Это обеспечит отображение корзины на всех страницах.

Услуги Стоимость разработки на 1С-Битрикс

Стоимость разработки сайта зависит от объёма и сложности проекта. Ниже приведены ориентировочные цены, как правило не выходят за обозначенные рамки. Срок разработки зависит от сложности проекта: как правило называю сроки с запасом.
Финальная стоимость и сроки разработки обговариваются на этапе обсуждения. Скачайте опросник на разработку, заполните как можно подробнее и вышлите удобным способом. После ознакомления смогу задать уточняющие вопросы и оценить проект.
Поддержка и доработки проектов
от 3 000 руб. от 1 часа

Выполнение доработок любой сложности. Поддержка, модернизация и расширение функционала существующих проектов. Решение задач: от мелких правок вёрстки до разработки новых модулей.

Подробнее
Сайт на готовом решении 1С-Битрикс
от 70 000 руб. от 5-ти дней

Вариант для тех, кто не хочет тратить много средств на индивидуальный проект, и не имеет серьезных требований к сайту. Магазин, быстро запускается на базе одного из 200-та готовых решений.

Подробнее
Индивидуальная разработка магазина
от 300 000 руб. от 5-ти недель

Разработка магазина на 1С-Битрикс с нуля. Дизайн, сборка и оптимизация производительности под конкретный проект и требования. Реализация любого функционала без ограничений готовых решений.

Подробнее
Мобильное приложение
от 300 000 руб. от 4-х недель

Разработка кроссплатформенного мобильного приложения, которое не уступает нативным решениям как в производительности, так и пользовательском опыте. Публикуется в AppStore, GooglePlay и RuStore

Подробнее
Инфоресурс
от 170 000 руб. от 3-х недель

Информационный ресурс любой сложности. Сайт для СМИ, городской портал или многопользовательская доска объявлений. Внутренние форумы, блоги- по необходимости.

Подробнее
Сайт компании
от 150 000 руб. от 2-х недель

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

Подробнее

Включено в стоимость разработки:

  • Лицензия на 1С-Битрикс необходимой редакции, дополнительные модули, для реализации функционала и видео-инструкции по работе с готовым проектом
  • Оптимизация программной части проекта и конфигурации сервера под максимальную скорость работы. Базовая СЕО оптимизация и добавление сайта в поисковые системы.

Блог-note Заметки по 1С-Битрикс