守望的麦子

无需插件为 Jekyll 创建 RSS feed

2014-03-30    曼谷 /others/2014/03/30/rss.html others

本文最近更新于 2017 年 10 月 09 日

本文方法源自 jekyll-rss-feeds

2015/04/07 - 更新 feed.xml(详情见 这里);修正 feedburner 超过 1024K 问题。#Moscow

_config.yml 中添加站点信息

name: Your Blog's Name
description: A description for your blog
url: https://your-blog-url.example.com

这些值将会作为网站信息用于你的 feed 中,作为“奖赏”,以后你也可以在你的 Jekyll 模板 中使用 site.name, site.descriptionsite.url 来调用这些变量值。

为你的网站添加 feed.xml

jekyll-rss-feeds 提供了几种 feeds 可供使用,详见 https://github.com/snaptortoise/jekyll-rss-feeds

这里我们使用一种常用形式,即调用最新的 20 篇文章。所使用的 feed.xml 代码如下(feed.xml 放置在网站根目录下):

{% raw %}
---
---
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>{{ site.name | xml_escape }}</title>
		<description>{% if site.description %}{{ site.description | xml_escape }}{% endif %}</description>		
		<link>{{ site.url }}</link>
		<atom:link href="{{ site.url }}/feed.xml" rel="self" type="application/rss+xml" />
		{% for post in site.posts limit:20 %}
			<item>
				<title>{{ post.title }}</title>
				{% if post.excerpt %}
					<description>{{ post.excerpt | xml_escape }}</description>
				{% elsif post.description %}
					<description>{{ post.description | xml_escape }}</description>
				{% else %}
					<description>{{ site.description | xml_escape }}</description>
				{% endif %}				
				<pubDate>{{ post.date | date: "%a, %d %b %Y %H:%M:%S %z" }}</pubDate>
				<link>{{ site.url }}{{ post.url }}</link>
				<guid isPermaLink="true">{{ site.url }}{{ post.url }}</guid>
			</item>
		{% endfor %}
	</channel>
</rss>
{% endraw %}

当然,你也可以自定义最新文章的数量,只需更改 for post in site.posts limit:20 中的 20 为你想要的数字即可。

创建,提交!

执行 jekyll serve 生成你的站点然后 push 到你的服务器!如果你在使用 GitHub Pages,那就直接 git push 吧!

最后,顺手在网站的 <head> 中添加上 feed 的 <link> 吧!

<link href='https://wheat.at/feed.xml' rel='alternate' type='application/atom+xml'>

DONE!

https://joelglovier.com/writing/rss-for-jekyll/
https://kmikael.com/2013/05/23/adding-an-rss-feed-to-a-jekyll-site/

关于作者
麦子,80 后,现从事通信行业。安卓玩家一个人的书房朗读者。
MRJENGLISH
jsntn
jasonwtien
jasonwtien
更多…… /about.html

最近更新: