/
feed.xml
95 lines (84 loc) · 4.05 KB
/
feed.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
---
---
{%- comment -%}
Copied and adapted from https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/feed.xml
We needed to customize images, specifically.
{%- endcomment -%}
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" {%- if site.lang -%}xml:lang="{{ site.lang }}"{%- endif -%}>
<generator uri="https://jekyllrb.com/" version="{{ jekyll.version }}">Jekyll</generator>
<link href="{{ page.url | absolute_url }}" rel="self" type="application/atom+xml" />
<link href="{{ '' | absolute_url }}" rel="alternate" type="text/html" {%- if site.lang -%}hreflang="{{ site.lang }}" {%- endif -%}/>
<updated>{{ site.time | date_to_xmlschema }}</updated>
<id>{{ page.url | absolute_url | xml_escape }}</id>
{%- assign title = site.title | default: site.name -%}
{%- if page.collection != "posts" -%}
{%- assign collection = page.collection | capitalize -%}
{%- assign title = title | append: " | " | append: collection -%}
{%- endif -%}
{%- if page.category -%}
{%- assign category = page.category | capitalize -%}
{%- assign title = title | append: " | " | append: category -%}
{%- endif -%}
{%- if title -%}
<title type="html">{{ title | smartify | xml_escape }}</title>
{%- endif -%}
{%- if site.description -%}
<subtitle>{{ site.description | xml_escape }}</subtitle>
{%- endif -%}
{%- if site.author -%}
<author>
<name>{{ site.author.name | default: site.author | xml_escape }}</name>
{%- if site.author.email -%}
<email>{{ site.author.email | xml_escape }}</email>
{%- endif -%}
{%- if site.author.uri -%}
<uri>{{ site.author.uri | xml_escape }}</uri>
{%- endif -%}
</author>
{%- endif -%}
{%- assign feed_items = site.feed_items | default: 10 -%}
{%- for post in site.posts limit: feed_items -%}
<entry{%- if post.lang -%}{{" "}}xml:lang="{{ post.lang }}"{%- endif -%}>
<title type="html">{{ post.title | smartify | strip_html | normalize_whitespace | xml_escape }}</title>
<link href="{{ post.url | absolute_url }}" rel="alternate" type="text/html" title="{{ post.title | xml_escape }}" />
<published>{{ post.date | date_to_xmlschema }}</published>
<updated>{{ post.last_modified_at | default: post.date | date_to_xmlschema }}</updated>
<id>{{ post.id | absolute_url | xml_escape }}</id>
<content type="html" xml:base="{{ post.url | absolute_url | xml_escape }}">{{ post.content | strip | xml_escape }}</content>
{%- assign post_author = post.author | default: post.authors[0] | default: site.author -%}
{%- assign post_author = site.data.authors[post_author] | default: post_author -%}
{%- assign post_author_email = post_author.email | default: nil -%}
{%- assign post_author_uri = post_author.uri | default: nil -%}
{%- assign post_author_name = post_author.name | default: post_author -%}
<author>
<name>{{ post_author_name | default: "" | xml_escape }}</name>
{%- if post_author_email -%}
<email>{{ post_author_email | xml_escape }}</email>
{%- endif -%}
{%- if post_author_uri -%}
<uri>{{ post_author_uri | xml_escape }}</uri>
{%- endif -%}
</author>
{%- if post.category -%}
<category term="{{ post.category | xml_escape }}" />
{%- endif -%}
{%- for tag in post.tags -%}
<category term="{{ tag | xml_escape }}" />
{%- endfor -%}
{%- if post.excerpt and post.excerpt != empty -%}
<summary type="html">{{ post.excerpt | strip_html | normalize_whitespace | xml_escape }}</summary>
{%- endif -%}
{%- if post.image.facebook -%}
<media:thumbnail
xmlns:media="http://search.yahoo.com/mrss/"
url="{{ post.image.facebook | xml_escape }}"
width="1024" />
{%- comment -%} and enclosure is used by some older readers {%- endcomment -%}
<link rel="enclosure"
href="{{ post.image.facebook | xml_escape }}"
type="image/jpeg" />
{%- endif -%}
</entry>
{%- endfor -%}
</feed>