sitemaps

The sitemap-xml-writer crate provides writers for sitemap.xml.

crates.io docs.rs

Feature flags

Usage

Writing sitemap file

```rust use sitemapxmlwriter::{SitemapWriter, Url}; use std::io::Cursor;

let mut writer = SitemapWriter::start(Cursor::new(Vec::new()))?; writer.write( Url::loc("http://www.example.com/")? .lastmod("2005-01-01")? .changefreq("monthly")? .priority("0.8")?, )?; writer.end()?;

let actual = String::fromutf8(writer.intoinner().intoinner())?; let expected = concat!( r#""#, r#""#, r#""#, r#"http://www.example.com/"#, r#"2005-01-01"#, r#"monthly"#, r#"0.8"#, r#""#, r#""# ); asserteq!(actual, expected); ```

Writing sitemap index file

```rust use sitemapxmlwriter::{SitemapIndexWriter}; use std::io::Cursor;

let mut writer = SitemapIndexWriter::start(Cursor::new(Vec::new()))?; writer.write( Sitemap::loc("http://www.example.com/sitemap1.xml.gz")? .lastmod("2004-10-01T18:23:17+00:00")?, )?; writer.end()?;

let actual = String::fromutf8(writer.intoinner().intoinner())?; let expected = concat!( r#""#, r#""#, r#""#, r#"http://www.example.com/sitemap1.xml.gz"#, r#"2004-10-01T18:23:17+00:00"#, r#""#, r#""# ); asserteq!(actual, expected); ```