1、安装 hexo-generator-sitemap
npm install hexo-generator-sitemap --save
2、编辑 _config.yml 加入配置信息
sitemap:
path:
- sitemap.xml
- sitemap.txt
template: ./sitemap_template.xml
template_txt: ./sitemap_template.txt
rel: false
tags: true
categories: true
参数说明
- path:定义了生成的sitemap文件的路径和名称,这里有两个路径,一个是sitemap.xml,另一个是sitemap.txt。
- template:指定了用于生成XML格式的sitemap的模板文件,路径为./sitemap_template.xml。
- template_txt:指定了用于生成TXT格式的sitemap的模板文件,路径为./sitemap_template.txt。
- rel:这个配置项设置为false,通常用于指定是否在生成的sitemap中包含rel=”alternate”的链接,这里表示不包含。
- tags:设置为true,表示在sitemap中包含标签(tags)的链接。
- categories:设置为true,表示在sitemap中包含分类(categories)的链接。
如果不想 页面/文章 生成,插入 sitemap: false
--- title: date: sitemap: false ---
sitemap_template.xml 模板代码
点击展开 / 折叠
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
{% for post in posts %}
<url>
<loc>{{ post.permalink | uriencode }}</loc>
{% if post.updated %}
<lastmod>{{ post.updated | formatDate }}</lastmod>
{% elif post.date %}
<lastmod>{{ post.date | formatDate }}</lastmod>
{% endif %}
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
{% endfor %}
<url>
<loc>{{ config.url | uriencode }}</loc>
<lastmod>{{ sNow | formatDate }}</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
{% for tag in tags %}
<url>
<loc>{{ tag.permalink | uriencode }}</loc>
<lastmod>{{ sNow | formatDate }}</lastmod>
<changefreq>weekly</changefreq>
<priority>0.2</priority>
</url>
{% endfor %}
{% for cat in categories %}
<url>
<loc>{{ cat.permalink | uriencode }}</loc>
<lastmod>{{ sNow | formatDate }}</lastmod>
<changefreq>weekly</changefreq>
<priority>0.2</priority>
</url>
{% endfor %}
</urlset>
sitemap_template.txt 模板代码
{% for post in posts %}{{ post.permalink | uriencode }}
{% endfor %}{{ config.url | uriencode }}
{% for tag in tags %}{{ tag.permalink | uriencode }}
{% endfor %}{% for cat in categories %}{{ cat.permalink | uriencode }}
{% endfor %}
执行指令看看 sitemap 文件有没有正常生成到 public
hexo generate