Платформа¶
В CS-Cart используется модульная архитектура. Основные функции интернет-магазина выполняются платформой (ядром), а многочисленные модули и расширения дополняют функционал платформы.
Архитектура платформы построена на принципах концепции MVC. Данные, отображение (представление) и обработка действий пользователя разделены на три отдельных компонента:
- Контроллеры написаны на PHP. Контроллер выполняет обработку и передачу данных в шаблоны на отображение.
 - База данных MySQL. Получение и сохранение данных выполняет контроллер.
 - Платформа использует Smarty-шаблоны и JavaScript для отображения данных, обработанных контроллером.
 
Платформа позволяет расширять и изменять функционал без вмешательства в код ядра с помощью модулей, используя хуки. Хуки — элементы кода в функциях и шаблонах платформы, которые позволяют подключать ваш код или изменять существующий код. Вы можете создать модуль, который полностью изменит внешний вид и стандартную функциональность платформы или отдельных элементов.
Важно
Контроллеры, функции, шаблоны, структуру базы данных и другие элементы ядра платформы рекомендуется расширять или изменять с помощью модулей (аддонов). Внесение изменений в ядро может привести к конфликтам при будущих обновлениях платформы.
- Структура платформы
 - Стандарты разработки
 - Контекстное меню
 - Контроллеры
 - Front-end
 - Работа с базой данных MySQL
- Плейсхолдеры (Placeholders)
 - Функции для работы с базой данных
- db_query — любой SQL запрос
 - db_quote — валидация SQL запроса
 - db_get_field — получить значение ячейки
 - db_get_row — получить строку данных по значению
 - db_get_fields — получить список данных
 - db_get_array — получить массив данных
 - db_get_hash_array — получить массив данных c особыми ключами
 - db_get_hash_single_array — получить массив вида “ключ => значение”
 - db_get_hash_multi_array — массив данных (группировка и заданные ключи)
 - db_get_hash_multi_array — массив данных (группировка, фильтрация, заданные ключи)
 
 - Требования к базам данных
 
 - Настройки
 - Редактор документов и писем
 - Уведомления о событиях
 - Переводы и мультиязычность
 - Мультивитринность
 - Что такое Sharing и для чего он нужен
 - Мультипоточность способов доставки
 - Безопасность
 - Как добавить картинку к объекту
 - Опции и исключения
 - Характеристики и фильтры
 - Класс Application
 - Класс Registry
 - Last View
 - Роутинг
 - Схемы и их устройство
 - Центр обновлений