jekyll-sitemaps
Generates sitemap for pages, posts, archives/categories, collections and images.
Live example: https://www.christianengvall.se/sitemap.xml
Installation
- Download Jekyll sitemaps.
- Copy
category-sitemap.xml
,page-sitemap.xml
,post-sitemap.xml
,project-sitemap.xml
andsitemap.xml
to your root folder. - Copy
_includes/single-post-sitemap.html
to your_includes
folder. - Edit images in
single-post-sitemap.xml
as described under Images below. - If you do not use jekyll-archives plugin disable that as described under Categories below.
- Edit or remove collections sitemap as described under Collections below.
Images
Google supports adding images to the sitemap. You need to edit the image url of your post(if any) on line 5 in single-post-sitemap.html
.
If you do not use images you can remove lines 4 to 8.
<image:image>
<image:loc>{{ post.image.source | absolute_url }}</image:loc>
<image:title><![CDATA[{{ post.title }}]]></image:title>
<image:caption><![CDATA[{{ post.title }}]]></image:caption>
</image:image>
Categories
This plugin supports jekyll-archives. This sitemap is created with the category-sitemap.xml file. If you do not use the jekyll archives plugin you should delete category-sitemap.xml and remove the following from sitemap.xml:
<sitemap>
<loc>{{ site.url }}/category-sitemap.xml</loc>
<lastmod>{{ site.time | date_to_xmlschema }}</lastmod>
</sitemap>
Collections
Since collections are dynamic only an example is added with jekyll-sitemaps. If you do not use collections you can delete project-sitemap.xml and the following from sitemap.xml:
<sitemap>
<loc>{{ site.url }}/project-sitemap.xml</loc>
<lastmod>{{ site.time | date_to_xmlschema }}</lastmod>
</sitemap>
If you do use collections you need to change this:
- Change
site.projects
tosite.<name-of-collection>
in project-sitemap.xml - Change filename of
project-sitemap.xml
to<name-of-collection>-sitemap.xml
- Change the reference from
project-sitemap.xml
to<name-of-collection>-sitemap.xml
in sitemap.xml:
<sitemap>
<loc>{{ site.url }}/<name-of-collection>-sitemap.xml</loc>
<lastmod>{{ site.time | date_to_xmlschema }}</lastmod>
</sitemap>