Die Contao Show (Folge 24) – Hallo Contao 5.7
In dieser Ausgabe dreht sich alles um die neue Contao Version 5.7. Christian, Christian und Dennis nehmen die Neuerungen unter die Lupe und schauen sich dabei besonders das Template Studio sowie das neue Twig-Layout mit Slots an
Ganzen Beitrag zu 'Die Contao Show (Folge 24) – Hallo Contao 5.7' lesen
Contao Demo - 1 column | start - no breadcrumb (twig)
Habe mal zur Übung das Layout kopiert und auf Twig Layout umgestellt.
Dafür vorher eine Variante angelegt (layout-1-column) und die dann zugewiesen. (inkl. preefooter slot)
Die Show war da eine gute Anleitung, weil man für die Contao Demo CSS noch einige DIVs hinzufügen muss sowie id und class Angaben)
Außerdem habe ich mal die Erweiterung "lukasbableck/contao-twig-layout-assets-bundle" ausprobiert, was die einem da so abnehmen kann.
Da habe ich die generierte theme css hinzugefügt (vorher nach files kopiert) und einige JS Dateien. (theme script.js, a11y-nav.js und den "window.addEventListener" Teil.
Das kann man natürlich auch alles in der Layout Variante einfügen.
Hier mal meine Layout Variante. Noch nicht perfekt, wie gesagt ich übe damit was wie das alles funktioniert.
Code:
{% extends "@Contao/page/layout.html.twig" %}
{%- set body_attributes = attrs()
.addClass('layout--1-column')
.mergeWith(body_attributes|default)
-%}
{% block end_of_head %}
{{ parent() }}
<link rel="stylesheet" href="{{ asset('contaodemo/files_contaodemo_theme_src_scss_app.scss.css', 'contao_vfs.files') }}">
<script src="{{ asset('js/jquery.js', 'contao-components/jquery') }}"></script>
{% endblock %}
{% block body %}
{{ parent() }}
{{ include('@Contao/j_accordion.html.twig') }}
{{ include('@Contao/js_slider.html.twig') }}
{{ include('@Contao/j_colorbox.html.twig') }}
{{ include('@Contao/j_tablesort.html.twig') }}
{% endblock %}
{% block body_content %}
<div id="wrapper">
{% slot header %}
<header id="header"><div class="inside">{{ slot() }}</div></header>
{% endslot %}
<div id="container">
{% slot main %}
<main id="main"><div class="inside">{{ slot() }}</div></main>
{% endslot %}
</div>
{% slot prefooter %}
<div id="prefooter"><div class="inside">{{ slot() }}</div></div>
{% endslot %}
{% slot footer %}
<footer id="footer"><div class="inside">{{ slot() }}</div></footer>
{% endslot %}
</div>
{% endblock %}