为Pelican Blog添加Json Feed
- By lifetyper
- Mon 02 September 2019
为Pelican添加Plugins目录
找到你的pelicanconf.py文件,在同路径添加一个plugins目录(名字可以改),然后从这里clone这个插件过来到plugins目录。
编辑pelicanconf.py配置
为了让pelican工程认到这个插件,需要编辑pelicanconf.py文件,添加以下内容:
#Plugins
PLUGIN_PATHS = ['plugins']
PLUGINS = ['pelican_json_feed']
FEED_ALL_JSON = 'feeds.json'
FEED_ALL_JSON的文件名可以自己定义。
修一个小bug
打开插件的json_feed.py文件,这个项目真的有点老了,json.dump函数现在只接受两个参数,不知道这个工程写的时候是不是参数都不一样,把最后一个encode参数删掉才行,否则会爆错。
def write(self, fp, encoding='utf-8'):
json.dump(self.feed, fp)
编辑blog模板
服务爬虫,更容易的找到你的json_feed,在base.html模板的header中添加:
{% if FEED_ALL_JSON %}
<link rel="alternate" type="application/json" title="JSON Feed" href="{{ FEED_DOMAIN }}/{{ FEED_ALL_JSON }}">
{% endif %}
然后重新发布,好了。