Структура файлов шаблона OpenCart 3: папки и Twig
с учётом практики команды с 17-летним опытом разработки на OpenCart — Шаблон OpenCart 3 хранится в папке catalog/view/theme/название_темы/ и состоит из Twig-файлов, CSS, JavaScript, изображений и шаблонов модулей. Главные файлы витрины лежат в template/common, страницы товаров и категорий — в template/product, оформление заказа — в template/checkout, а блоки модулей — в template/module.
OpenCart удобен для доработки шаблонов тем, что структура файлов предсказуемая: контроллер готовит данные, Twig-шаблон отвечает за вывод, а стили и скрипты можно держать отдельно. Поэтому магазин на OpenCart можно аккуратно развивать без смены CMS: менять карточку товара, категорию, шапку, подвал, checkout, модули и посадочные страницы под SEO.
Из практики: в одном проекте клиенту нужно было вывести дополнительный блок «Аксессуары» на карточке товара без установки модуля. Зная структуру шаблона, мы просто отредактировали product.twig, добавив вызов кастомного контроллера — задача заняла 20 минут. Если бы пришлось разбираться, где что лежит, потратили бы полдня.
По практике команды с 17-летним опытом разработки на OpenCart: структура шаблона OpenCart 3 логичная, но новички часто теряются в папке template/. Типичная ошибка — править файлы в default-теме вместо своей, и тогда после обновления CMS изменения слетают. Правильный подход: создать свою тему-наследник и переопределять только те файлы, которые реально меняете. Так базовая тема остаётся нетронутой, а обновления не ломают вёрстку.
Коротко: структура шаблона OpenCart 3
Базовая структура каталога темы выглядит так:
catalog/ view/ theme/ default/ image/ javascript/ stylesheet/ template/ account/ checkout/ common/ information/ mail/ module/ product/Что где править в шаблоне OpenCart
| Задача | Где искать файл |
|---|---|
| Шапка, подвал, колонки, меню, корзина | template/common/ |
| Категория, карточка товара, поиск, акции | template/product/ |
| Корзина и оформление заказа | template/checkout/ |
| Личный кабинет, заказы, адреса, регистрация | template/account/ |
| Контакты, статьи, карта сайта | template/information/ |
| Баннеры, категории, фильтр, хиты, новинки | template/module/ |
| Письма магазина | template/mail/ |
Безопасный порядок правки шаблона
- Сделайте резервную копию файлов и базы.
- Проверьте, какая тема включена в админке OpenCart.
- Вносите изменения в копию темы или через модификатор, если правка должна пережить обновления.
- После изменения Twig очистите кэш шаблона и кэш модификаций.
- Проверьте страницу на мобильном, корзину, оформление заказа и error log.
Я настоятельно рекомендую всегда делать вторым шагом проверку error log после правки — самая частая проблема, с которой ко мне приходят клиенты: «Поменял одну строку в Twig, и всё сломалось». Пара минут просмотра лога обычно сразу указывает на проблему.
Подробная структура файлов шаблона
catalog/view/theme/[название_шаблона]/image/— изображения шаблонаjavascript/— JS-файлы шаблонаstylesheet/— CSS-файлы шаблонаtemplate/— Twig-шаблоны (common, account, checkout, information, mail, module, product)
admin/view/template/— шаблоны административной панелиsystem/— библиотеки и классы OpenCart
В папке template шаблоны разбиты по разделам сайта. common содержит общие элементы страниц, product — шаблоны для вывода товара. Обычно для нового шаблона достаточно скопировать папку default/ и доработать нужные файлы — не обязательно переписывать всё с нуля.
Папка common:
Файлы в template/common/ отвечают за элементы, которые присутствуют на большинстве страниц. Вот что обычно там можно найти:
footer.twig— нижний колонтитулheader.twig— верхний колонтитул (шапка)maintenance.twig— страница техобслуживанияmenu.twig— основное менюcolumn_left.twig/column_right.twig— боковые колонкиcurrency.twig— переключатель валютlanguage.twig— переключатель языковsearch.twig— форма поискаcart.twig— блок корзины в шапке
Папка account:
В template/account/ находятся шаблоны личного кабинета. Стандартный набор включает:
account.twig— главная страница аккаунтаaddress_form.twig/address_list.twig— адресаlogin.twig/register.twig— вход и регистрацияorder.twig/order_info.twig/order_list.twig— заказыpassword.twig— смена пароляwishlist.twig— список желаемогоreturn.twig/return_form.twig/return_list.twig— возвратыdownload.twig— загрузкиrecurring.twig— регулярные платежиtransaction.twig/transaction_list.twig— транзакцииvoucher.twig— подарочные сертификатыaffiliate.twig— партнёрская программаapi.twig— управление API-доступом
Папка checkout:
В template/checkout/ лежат шаблоны корзины и оформления заказа:
cart.twig— страница корзиныcheckout.twig— оформление заказаconfirm.twig— подтверждение заказаguest.twig— оформление без регистрацииlogin.twig— вход перед заказомpayment_address.twig/payment_method.twig— платёжные данныеshipping_address.twig/shipping_method.twig— данные доставки
Папка information:
В template/information/ стандартного шаблона находятся:
contact.twig— страница контактовinformation.twig— информационная страницаsitemap.twig— карта сайта
Папка module:
В template/module/ содержатся шаблоны стандартных модулей:
banner.twig,slideshow.twig,carousel.twig— медиаблокиbestseller.twig,featured.twig,latest.twig,special.twig— списки товаровcategory.twig— меню категорийfilter.twig— фильтр товаровhtml.twig— произвольный HTML-блокmenu.twig— горизонтальное менюsearch.twig— форма поиска (модульная)store.twig— информация о магазинеwelcome.twig— приветствие на главной
Это не исчерпывающий список — каждый шаблон может иметь свои уникальные модули или изменённые версии стандартных.
Папка product:
В template/product/ находятся шаблоны, связанные с товарами:
category.twig— страница категории товаровproduct.twig— карточка товараcompare.twig— сравнение товаровsearch.twig— результаты поискаspecial.twig— акционные товарыmanufacturer_info.twig/manufacturer_list.twig— производителиreview.twig— отзывы
Важно про Twig и кэш OpenCart
В OpenCart 3 шаблоны витрины используют Twig. Если вы изменили .twig-файл, но правка не появилась на сайте, чаще всего причина в кэше: очистите кэш шаблона, кэш модификаций и при необходимости кэш браузера. На рабочем магазине не включайте отладочные настройки надолго, чтобы не показывать посетителям технические ошибки.
Если в шаблоне нет нужной переменной, её обычно нужно передать из контроллера. Это нормальная архитектура OpenCart: контроллер готовит данные, модель получает их из базы, Twig только выводит. Такой подход делает OpenCart удобным для аккуратных доработок без хаоса в шаблонах. Подробнее про переменные в OpenCart 3.
FAQ: файлы шаблона OpenCart 3
Где находится шаблон OpenCart 3?
Шаблон OpenCart 3 находится в папке catalog/view/theme/название_темы/. В стандартной установке часто используется catalog/view/theme/default/, но в рабочем магазине может быть установлена другая тема.
Где править карточку товара OpenCart?
Карточка товара обычно находится в catalog/view/theme/название_темы/template/product/product.twig. Если используется нестандартный шаблон или модуль карточки, часть вывода может быть вынесена в другие Twig-файлы или модификаторы.
Где править шапку и подвал OpenCart?
Шапка — template/common/header.twig, подвал — template/common/footer.twig. Перед правкой проверьте, не подключает ли тема дополнительные блоки, меню или модули через макеты.
Почему правки в Twig не видны на сайте?
Чаще всего из-за кэша Twig, кэша модификаций OCMOD или кэша браузера. Очистите кэш в админке OpenCart, обновите модификаторы и проверьте, что редактируете файл активной темы. Подробнее — в руководстве по очистке кэша OpenCart.
paragraph —>
Из практики. В практике работы с OpenCart я не раз сталкивался с ситуацией, когда стандартное решение не подходит, и нужно адаптировать CMS под конкретные задачи бизнеса. В одном проекте мы потратили неделю на поиск проблемы, которая решилась простым изменением конфигурации — потому что не посмотрели в логи сразу. С тех пор у нас правило: начинать диагностику с логов, а не с предположений.
Как не надо. Не копируйте готовые решения из интернета без проверки совместимости с вашей версией OpenCart и установленными модулями. То, что сработало у другого владельца магазина, может сломать ваш сайт — особенно если у вас нестандартная сборка. Всегда делайте бэкап перед любыми изменениями.
Рекомендации из практики
Как лучше: Запомните главное: все шаблоны OpenCart 3 лежат в catalog/view/theme/ваша_тема/template/. Структура папок повторяет структуру контроллеров.
Как не делать: Не редактируйте файлы напрямую в default — создайте свою тему-наследник. Иначе после обновления все изменения пропадут.
Кейс из практики: Разработчик правил файлы в default полгода. При обновлении OpenCart все правки потерялись. Пришлось восстанавливать длительное время.
Нужна помощь — закажите доработку: проверим и настроим.
Комментарии (5)
Оставить комментарий