[Middleman 3] Middleman のテンプレートをつかって sitemap.xml を生成する
erb テンプレートをつかって、Sitemap XML を作成します。
% middleman version
Middleman 3.3.6
こちらで紹介されていました。
sitemap.xml.erb
こちらで公開されているソースを利用して、source/sitemap.xml.erb
にテンプレートを作成します。
youdomain.com
の箇所は、必要な値に書き換えます。
<% pages = sitemap.resources.find_all{|p| p.source_file.match(/\.html/) } %>
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<% pages.each do |p| %>
<url>
<loc>http://youdomain.com/<%=p.destination_path.gsub('/index.html','')%></loc>
<priority>0.7</priority>
</url>
<% end %>
</urlset>
config.rb
sitemap.xml.erb に対して、テンプレートを無効にする設定を加えます。
page "/sitemap.xml", :layout => false
middleman build
で /build にファイルが生成されました。