5 февраля 2025 г.

Базовый шаблон в Storefront Shopware

В Shopware файл base.html.twig является основным шаблоном, но он относится только к Storefront (фронтенду). В админке, кабинете пользователя и других частях могут быть другие базовые шаблоны.
1. Базовый шаблон в Storefront

Файл base.html.twig находится здесь:

/vendor/shopware/storefront/Resources/views/storefront/base.html.twig

Этот шаблон включает:

    <head> (мета-теги, стили, скрипты).
    <body> с основными контейнерами.
    Блоки для хедера, футера и основного контента.


Основные блоки в base.html.twig:

    {% block base_head %} – секция <head>.
    {% block base_body %} – весь <body>.
    {% block base_header %} – верхняя часть сайта.
    {% block base_content %} – основной контент.
    {% block base_footer %} – футер.

base_navigation – отвечает за меню навигации
base_breadcrumb – отвечает за "хлебные крошки"

Пример кастомизации:
{% block base_breadcrumb %}
    <div class="my-custom-breadcrumb">
        {{ parent() }} <!-- Оставляем стандартный вывод -->
        <span>Вы здесь!</span>
    </div>
{% endblock %}

2. Базовые шаблоны для других частей

    Админка (Administration):
    Использует свой шаблон, например:

    /vendor/shopware/administration/Resources/views/administration/index.html.twig

    Личный кабинет пользователя (account):
    Использует @Storefront/storefront/page/account/index.html.twig, но наследует base.html.twig.

3. Как переопределить base.html.twig?

Создайте свою тему и добавьте файл:

custom/plugins/MyTheme/src/Resources/views/storefront/base.html.twig

Наследуйте оригинальный шаблон и изменяйте только нужные блоки:

{% sw_extends '@Storefront/storefront/base.html.twig' %}

{% block base_footer %}
    <div class="custom-footer">Мой кастомный футер</div>
{% endblock %}

Если хотите изменить базовый шаблон для админки или кабинета пользователя – редактируйте соответствующие файлы.


Комментариев нет:

Отправить комментарий

Как посмотреть список сервис-провайдеров в Laravel?

 ✅ Просмотр config/app.php Откройте файл config/app.php и найдите секцию 'providers'  ✅  Использовать Artisan-команду Запустите ком...