Add taglist page
This commit is contained in:
parent
1625f36ba4
commit
5945f278ae
|
|
@ -36,6 +36,15 @@ module.exports = config => {
|
|||
return [...collection.getFilteredByGlob('./src/posts/*.md')].reverse();
|
||||
});
|
||||
|
||||
// Return all the tags used in a collection
|
||||
config.addFilter("getAllTags", collection => {
|
||||
let tagSet = new Set();
|
||||
for(let item of collection) {
|
||||
(item.data.tags || []).forEach(tag => tagSet.add(tag));
|
||||
}
|
||||
return Array.from(tagSet);
|
||||
});
|
||||
|
||||
return {
|
||||
markdownTemplateEngine: 'njk',
|
||||
dataTemplateEngine: 'njk',
|
||||
|
|
|
|||
|
|
@ -3,6 +3,15 @@
|
|||
"SkipLink": "Skip to content",
|
||||
"ToggleTheme": "Toggle theme",
|
||||
"TopLink": "Back to top",
|
||||
"Listing": {
|
||||
"Tags": {
|
||||
"Title": "Tagged",
|
||||
"More": {
|
||||
"See": "See",
|
||||
"All": "all tags"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Footer": {
|
||||
"lastDeployment": "Dernier déploiement le",
|
||||
"createdWith": "Built with"
|
||||
|
|
|
|||
|
|
@ -7,6 +7,14 @@
|
|||
{
|
||||
"text": "About",
|
||||
"url": "/about/"
|
||||
},
|
||||
{
|
||||
"text": "Blog",
|
||||
"url": "/blog/"
|
||||
},
|
||||
{
|
||||
"text": "Demo",
|
||||
"url": "/tags/demo/"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
{% if tags %}
|
||||
{% for tag in tags %}
|
||||
<li>
|
||||
<a href="/tag/{{ tag | slug }}/">{{ tag | title }}</a>
|
||||
<a href="/tags/{{ tag | slug }}/">{{ tag | title }}</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<section class="projects">
|
||||
<ol reversed class="postlist">
|
||||
{%- asyncEach blog in collections.blog -%}
|
||||
{%- asyncEach blog in postslist -%}
|
||||
<li>
|
||||
<h2><a href="{{ blog.url }}">{{ blog.data.title }}</a></h2>
|
||||
<ul class="list-inline">
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
{%- if blog.data.tags -%}
|
||||
{%- for tag in blog.data.tags -%}
|
||||
<li>
|
||||
<a href="/tag/{{ tag | slug }}/">{{ tag | title }}</a>
|
||||
<a href="/tags/{{ tag | slug }}/">{{ tag | title }}</a>
|
||||
</li>
|
||||
{%- endfor -%}
|
||||
{%- endif -%}
|
||||
|
|
|
|||
|
|
@ -2,9 +2,10 @@
|
|||
title: 'Blog'
|
||||
layout: 'list'
|
||||
---
|
||||
# Blog
|
||||
# {{ title }}
|
||||
|
||||
The latest articles from around the studio, demonstrating our design
|
||||
thinking, strategy and expertise.
|
||||
|
||||
{% set postslist = collections.blog %}
|
||||
{% include "partials/post-list.html" %}
|
||||
|
|
@ -7,4 +7,5 @@ metaDesc: 'A made up agency site that you build if you take Learn Eleventy From
|
|||
layout: 'home'
|
||||
---
|
||||
|
||||
{% set postslist = collections.blog %}
|
||||
{% include "partials/post-list.html" %}
|
||||
13
src/tags-list.md
Normal file
13
src/tags-list.md
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
---
|
||||
title: Tags
|
||||
permalink: /tags/
|
||||
layout: list
|
||||
---
|
||||
<h1 class="full-bleed">{{ title }}</h1>
|
||||
|
||||
<ul>
|
||||
{% for tag in collections.all | getAllTags %}
|
||||
{% set tagUrl %}/tags/{{ tag | slugify }}/{% endset %}
|
||||
<li><a href="{{ tagUrl }}" class="post-tag">{{ tag }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
36
src/tags.md
36
src/tags.md
|
|
@ -1,35 +1,17 @@
|
|||
---
|
||||
title: 'Tag Archive'
|
||||
layout: 'list'
|
||||
eleventyComputed:
|
||||
title: "{{ Term.Site.Listing.Tags.Title }} “{{ tag }}”"
|
||||
permalink: '/tags/{{ tag | slug }}/'
|
||||
pagination:
|
||||
data: collections
|
||||
size: 1
|
||||
alias: tag
|
||||
permalink: '/tag/{{ tag | slug }}/'
|
||||
layout: 'list'
|
||||
---
|
||||
|
||||
<h1>Tagged “{{ tag }}”</h1>
|
||||
<h1 class="full-bleed">{{ Term.Site.Listing.Tags.Title }} “{{ tag }}”</h1>
|
||||
|
||||
<section class="projects">
|
||||
<ol reversed class="postlist">
|
||||
{% set taglist = collections[ tag ] %}
|
||||
{% for blog in taglist | reverse %}
|
||||
<li>
|
||||
<h2><a href="{{ blog.url }}">{{ blog.data.title }}</a></h2>
|
||||
<ul class="list-inline">
|
||||
<li><time datetime="{{ blog.date | getDatetime }}">{{ blog.date | toFullDate }}</time></li>
|
||||
{%- if blog.data.tags -%}
|
||||
{%- for tag in blog.data.tags -%}
|
||||
<li>
|
||||
<a href="/tag/{{ tag | slug }}/">{{ tag | title }}</a>
|
||||
</li>
|
||||
{%- endfor -%}
|
||||
{%- endif -%}
|
||||
</ul>
|
||||
{%- if blog.data.leading -%}
|
||||
<p>{{ blog.data.leading }}</p>
|
||||
{%- endif -%}
|
||||
</li>
|
||||
{%- endfor -%}
|
||||
</ol>
|
||||
</section>
|
||||
{% set postslist = collections[ tag ] %}
|
||||
{% include "partials/post-list.html" %}
|
||||
|
||||
<p>{{ Term.Site.Listing.Tags.More.See }} <a href="/tags/">{{ Term.Site.Listing.Tags.More.All }}</a>.</p>
|
||||
Loading…
Reference in a new issue