From f85020f26ea43310572b8e2ee1d819fd4b8d1947 Mon Sep 17 00:00:00 2001 From: a-mt Date: Fri, 2 Dec 2016 19:13:20 +0100 Subject: [PATCH 1/2] Add sitemap.xsl if exists --- lib/jekyll/jekyll-sitemap.rb | 1 + lib/sitemap.xml | 3 +++ 2 files changed, 4 insertions(+) diff --git a/lib/jekyll/jekyll-sitemap.rb b/lib/jekyll/jekyll-sitemap.rb index b7283bd..6e3dbd0 100644 --- a/lib/jekyll/jekyll-sitemap.rb +++ b/lib/jekyll/jekyll-sitemap.rb @@ -46,6 +46,7 @@ def sitemap site_map.content = File.read(source_path).gsub(MINIFY_REGEX, "") site_map.data["layout"] = nil site_map.data["static_files"] = static_files.map(&:to_liquid) + site_map.data["xsl"] = File.exist? @site.in_source_dir("sitemap.xsl") site_map end diff --git a/lib/sitemap.xml b/lib/sitemap.xml index 2b59cfd..e68a319 100644 --- a/lib/sitemap.xml +++ b/lib/sitemap.xml @@ -1,4 +1,7 @@ +{% if page.xsl %} + +{% endif %} {% for post in site.posts %}{% unless post.sitemap == false %} From 5a764d84f2f60aa491a0e62bf490bb4f199e1fa8 Mon Sep 17 00:00:00 2001 From: a-mt Date: Sat, 3 Dec 2016 08:07:34 +0100 Subject: [PATCH 2/2] Sitemap.xsl backwards-compatible checks in_source_dir --- lib/jekyll/jekyll-sitemap.rb | 12 ++++++------ lib/sitemap.xml | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/jekyll/jekyll-sitemap.rb b/lib/jekyll/jekyll-sitemap.rb index 6e3dbd0..36ae07f 100644 --- a/lib/jekyll/jekyll-sitemap.rb +++ b/lib/jekyll/jekyll-sitemap.rb @@ -8,7 +8,7 @@ class JekyllSitemap < Jekyll::Generator # Main plugin action, called by Jekyll-core def generate(site) @site = site - @site.pages << sitemap unless sitemap_exists? + @site.pages << sitemap unless file_exists?("sitemap.xml") end private @@ -46,16 +46,16 @@ def sitemap site_map.content = File.read(source_path).gsub(MINIFY_REGEX, "") site_map.data["layout"] = nil site_map.data["static_files"] = static_files.map(&:to_liquid) - site_map.data["xsl"] = File.exist? @site.in_source_dir("sitemap.xsl") + site_map.data["xsl"] = file_exists?("sitemap.xsl") site_map end - # Checks if a sitemap already exists in the site source - def sitemap_exists? + # Checks if a file already exists in the site source + def file_exists?(file_path) if @site.respond_to?(:in_source_dir) - File.exist? @site.in_source_dir("sitemap.xml") + File.exist? @site.in_source_dir(file_path) else - File.exist? Jekyll.sanitized_path(@site.source, "sitemap.xml") + File.exist? Jekyll.sanitized_path(@site.source, file_path) end end end diff --git a/lib/sitemap.xml b/lib/sitemap.xml index e68a319..23d7228 100644 --- a/lib/sitemap.xml +++ b/lib/sitemap.xml @@ -1,6 +1,6 @@ {% if page.xsl %} - + {% endif %} {% for post in site.posts %}{% unless post.sitemap == false %}