diff --git a/templates/_site/_news/_entry.twig b/templates/_site/_news/_entry.twig index 710b72f4..b809af9d 100644 --- a/templates/_site/_news/_entry.twig +++ b/templates/_site/_news/_entry.twig @@ -1,5 +1,7 @@ +{% do entry.setShouldRenderSchema(false) %} {% extends '_site/_layout' %} +{% set overview = craft.entries.section('newsOverview').one() %} {% set breadcrumbs = [ craft.entries.section('newsOverview').one(), entry, @@ -8,6 +10,23 @@ {% block content %} {% cache globally unless currentUser or craft.app.request.isPreview() %} + {# @var schema \Spatie\SchemaOrg\Schema #} + {% set schema = seoFields.schema %} + {{ schema.article + .name(entry.title) + .headline(entry.title) + .image(entry.headerImage.one().getUrl() ?? '') + .articleSection(overview.title) + .author(entry.getUrl() ~ '#organisation') + .articleBody(entry.intro|striptags) + |raw }} + + {{ schema.organization + .id('organisation') + .url(currentSite.baseUrl) + .name(craft.app.systemName) + |raw }} + {% embed "_site/_snippet/_content/_defaultHeader" %} {% block headerText %} {% include '_site/_snippet/_nav/_breadcrumb' %} diff --git a/templates/_site/_news/_index.twig b/templates/_site/_news/_index.twig index 46e05c17..121b0fc8 100644 --- a/templates/_site/_news/_index.twig +++ b/templates/_site/_news/_index.twig @@ -1,4 +1,5 @@ -{% extends "_site/_layout" %} +{% do entry.setShouldRenderSchema(false) %} +{% extends '_site/_layout' %} {% set breadcrumbs = [entry] %} @@ -147,6 +148,7 @@ {% endif %} {% if catQuery %} + {% set schemaCats = [] %} {% for category in categories.id(catQuery).all() %} {{ category.title }} + {% set schemaCats = schemaCats|merge([{ + "@type": "Thing", + "name": category.title, + }]) %} {% endfor %} {% endif %} {% endif %}
+ {% set schemaItems = [] %} {% for cardEntry in news %} {% include '_site/_snippet/_item/_card' %} + {% set schemaItems = schemaItems|merge([{ + "@type": "ListItem", + "position": loop.index, + "item": { + "@type": "NewsArticle", + "name": cardEntry.title, + "url": cardEntry.url, + } + }]) %} {% else %}
{{ "Geen items gevonden"|t }} @@ -181,4 +197,17 @@
+ + {# @var schema \Spatie\SchemaOrg\Schema #} + {% set schema = seoFields.schema %} + {{ schema.collectionPage + .name(entry.title) + .url(entry.url) + .about(schemaCats ?? '') + .mainEntity({ + "@type": "ItemList", + "numberOfItems": schemaItems|length, + "itemListElement": schemaItems ?? '' + }) + |raw }} {% endblock %} \ No newline at end of file