Run the following command to install Netgen Layouts & Sylius eCommerce integration:
composer require netgen/layouts-syliusSymfony Flex will automatically enable the bundle and import the routes.
Due to how Netgen Layouts works, your main layout template needs to wrap the
content block inside a new layout block:
{% block layout %}
{% block content %}
{% endblock %}
{% endblock %}
All full view templates (those that are rendered directly by controllers), need
to extend nglayouts.layoutTemplate instead of your original layout:
{% extends nglayouts.layoutTemplate %}
{% block content %}
...
{% endblock %}This allows Netgen Layouts to inject a layout resolved for the request into your page. Since you configured all your full views to now use Netgen Layouts, they will not fallback to your main layout template. Because of that, you need to configure Netgen Layouts with your main layout template, so the fallback keeps working as it should.
# config/packages/netgen_layouts.yaml
netgen_layouts:
pagelayout: templates/shop/layout.html.twigNetgen Layouts requires that ESI and fragments support is activated in Symfony.
# config/packages/framework.yaml
framework:
esi: true
fragments: trueTo properly integrate Netgen Layouts and Sylius admin interfaces, you need to
redefine the sylius.security.admin_regex parameter to allow access to
Netgen Layouts admin routes:
# config/packages/security.yaml
parameters:
sylius.security.admin_regex: "^(/%sylius_admin.path_name%|/nglayouts/app|/nglayouts/api|/nglayouts/admin|/cb)"