diff options
author | Harald Eilertsen <haraldei@anduin.net> | 2013-01-25 21:53:05 +0100 |
---|---|---|
committer | Harald Eilertsen <haraldei@anduin.net> | 2013-01-25 21:53:05 +0100 |
commit | f087c23c8600fe197d3a59f4a0cd839754459b37 (patch) | |
tree | 5577105a38545b143efec0bdb8c134bea04005c8 /app/views | |
download | hmnoweb-f087c23c8600fe197d3a59f4a0cd839754459b37.tar.gz hmnoweb-f087c23c8600fe197d3a59f4a0cd839754459b37.tar.bz2 hmnoweb-f087c23c8600fe197d3a59f4a0cd839754459b37.zip |
Initial commit.
Diffstat (limited to 'app/views')
-rw-r--r-- | app/views/sitemap/index.xml.builder | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/app/views/sitemap/index.xml.builder b/app/views/sitemap/index.xml.builder new file mode 100644 index 0000000..8e89852 --- /dev/null +++ b/app/views/sitemap/index.xml.builder @@ -0,0 +1,25 @@ +xml.instruct! + +xml.urlset "xmlns" => "http://www.sitemaps.org/schemas/sitemap/0.9" do + + @locales.each do |locale| + ::I18n.locale = locale + ::Refinery::Page.live.in_menu.includes(:parts).each do |page| + # exclude sites that are external to our own domain. + page_url = if page.url.is_a?(Hash) + # This is how most pages work without being overriden by link_url + page.url.merge({:only_path => false}) + elsif page.url.to_s !~ /^http/ + # handle relative link_url addresses. + [request.protocol, request.host_with_port, page.url].join + end + + # Add XML entry only if there is a valid page_url found above. + xml.url do + xml.loc url_for(page_url) + xml.lastmod page.updated_at.to_date + end if page_url.present? and page.show_in_menu? + end + end + +end |