我是Middleman(和Ruby)的新手,正在研究HTML和XML站点地图。我已使用此method正确生成了站点地图。
<% 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>
但这是网站中的所有.html
页面。如何从查询中排除某些页面(封闭内容,AB测试页等),以便它们不包含在站点地图中?
答案 0 :(得分:4)
只需在.find_all
块中添加更多条件:
.find_all { |p|
p.source_file.match(/\.html/)
&& p.whatever !== 'something'
}