Anında site haritası oluşturma

oy
4

Belirli bir asp.net web sitesi için anında bir siteharitasi.xml oluşturmak için çalışıyorum.

Bir kaç çözümler bulundu:

  1. chinookwebs
  2. cervoproject
  3. newtonking

Chinookwebs harika çalışıyor ama şu anda aktif olmayan biraz görünüyor ve hepsi yapılandırma dosyasından aynı değeri miras, öncelik ve her birinin changefreq etiketleri ve her sayfayı kişiselleştirmek için imkansız olduğunu.

Çocuklar siz ne çözümler kullanıyorsunuz?

Oluştur 13/08/2008 saat 01:01
kaynak kullanıcı
Diğer dillerde...                            


3 cevaplar

oy
7

Genellikle bir kullanacağız HTTP işleyicisi bunun için. Için bir istek Verilen ...

http://www.yoursite.com/sitemap.axd

... işleyicinizin bir biçimlendirilmiş XML site ile cevap verecektir. O site haritası anında oluşturulan olsun, bir veritabanı veya başka bir yöntemle HTTP Handler uygulanmasına bağlıdır.

İşte nasıl görüneceğini kabaca var:

void IHttpHandler.ProcessRequest(HttpContext context)
{
    //
    // Important to return qualified XML (text/xml) for sitemaps
    //
    context.Response.ClearHeaders();
    context.Response.ClearContent();
    context.Response.ContentType = "text/xml";
    //
    // Create an XML writer
    //
    XmlTextWriter writer = new XmlTextWriter(context.Response.Output);
    writer.WriteStartDocument();
    writer.WriteStartElement("urlset", "http://www.sitemaps.org/schemas/sitemap/0.9");
    //
    // Now add entries for individual pages..
    //
    writer.WriteStartElement("url");
    writer.WriteElementString("loc", "http://www.codingthewheel.com");
    // use W3 date format..
    writer.WriteElementString("lastmod", postDate.ToString("yyyy-MM-dd"));
    writer.WriteElementString("changefreq", "daily");
    writer.WriteElementString("priority", "1.0");
    writer.WriteEndElement();
    //
    // Close everything out and go home.
    //
    result.WriteEndElement();
    result.WriteEndDocument();
    writer.Flush();
}

Bu kod geliştirilebilir ama bu temel fikir.

Cevap 13/08/2008 saat 08:19
kaynak kullanıcı

oy
0

ASP.NET MVC sadece .NET, XML nesil kitaplığını kullanarak kod hızlı biraz çırpılmış ve sonra sadece geçmiş kullanma üzerine bir XML kontrol vardı bir görünüm sayfasına söyledi. kod arkasına ben ViewData ile kontrol bağladılar. Bu farklı bir başlık sunmak görünüm sayfalarının varsayılan davranışı geçersiz gibiydi.

Cevap 13/08/2008 saat 02:12
kaynak kullanıcı

oy
0

Özel işleyici site haritası oluşturmak için.

Cevap 13/08/2008 saat 01:48
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more