Ewy

Oversiktsside i GRAV

Det slo meg at det ville vært nyttig å kunne samle alle blogg-innlegg om et gitt tema, med fullt innhold og ikke bare som en liste. Dette viste seg å være veldig overkommelig i GRAV. Se fagsiden om preeklampsi som eksempel.

Det var bare å lage en ny template, jeg kalte den taggedpage.html.twig og putte inn

{% extends 'article.html.twig' %}

{% set body_classes = (body_classes|default('page article tufte')) %}
{% set navigablePage = page_navigation(page.content ?? '', page.header.itemize ?? theme.itemize ?? false) %}

{% block stylesheets %}
    {% do assets.addCss('theme://components/tufte/assets/tufte.min.css', 100) %}
{% endblock %}

{% block main %}

{% block header %}
<header role="banner">
    {% include 'partials/header.html.twig' with {'page': page, 'navigablePage': navigablePage} %}
</header>
{% endblock %}

<main>
    {% block article %}
        <article typeof="schema:ScholarlyArticle">
            {% block content %}
            <h1>{{ page.title }}</h1>
            {% if page.header.subtitle %}
            <p class="subtitle">{{ page.header.subtitle }}</p>
            {% endif %}
            <h2>Contents</h2>
            <ul>
                {% for child in taxonomy.findTaxonomy({'category': page.title}) %}
                    <li><a href="#{{ child.menu }}">{{ child.title }}</a></li>
                {% endfor %}
            </ul>
            {% for child in taxonomy.findTaxonomy({'category': page.title}) %}
            <section>
                <a name = "{{ child.menu }}">
                    <h2>{{ child.title }}</h2>
                </a>
                {% set navigablePage = page_navigation(child.content|strip_html_tags(['h1'])|section_wrapper('section', ['h2', 'h3', 'h4', 'h5', 'h6']), child.header.itemize ?? theme.itemize ?? false) %}
                {{ navigablePage.content }}
            </section>
            {% endfor %}
            {% endblock %}
        </article>
    {% endblock %}
</main>

{% block footer %}
{% include 'partials/footer.html.twig' %}
{% endblock %}

{% endblock %}

og så har jeg en ny side-type. Den vil finne alle sider med kategori lik sidetittelen sin, og skrive dem ut. Pluss at den lager en innholdsfortegnelse. Det som kan bli rot er om man har h2-headers i undersidene, i så fall vil det bli tull med innholdsfortegnelsen fordi hver underside har tittel på h2-nivå.