源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C#生成sitemap站点地图的方法

  • 时间:2020-08-02 01:26 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C#生成sitemap站点地图的方法
    Sitemaps是Google的一个和网站管理员相关的工具,有点象BLOG的RSS功能,是一个方便自己的服务,如果大家都采用了这种方式提交自己的更新的话,Google就再也不用派出那么多爬虫辛辛苦苦的到处乱窜了,任何一个站点,只要有更新,便会自动“通知”Google,方便Google进行索引。 好像最近BAIDU也开始支持XML格式的sitemap的站点地图了。 目前网络上有很多免费的生成sitemap站点地图的工具,使用起来也比较方便。其原理就是抓取你指定的页面,获取页面上所有的链接,根据这些链接生成一个xml格式的sitemap站点地图文件。 但是这样做的缺点就是只能生成页面上有链接的sitemap站点地图,同时,站点地图需要手工上传到服务器才能使用。 下面就提供一种通过C#自动生成sitemap站点地图的方法,可以直接通过网站系统生成在服务器目录,而且根据自己的需求任意设置需要显示在sitemap站点地图中的链接。
[u]复制代码[/u] 代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Voodoo.other.SEO { /// <summary> /// 生成站点地图sitemap /// (c) http://aizr.net /// </summary> public class SiteMap { public List<PageInfo> url { get; set; } /// <summary> /// 生成SiteMap字符串 /// </summary> /// <returns></returns> public string GenerateSiteMapString() { StringBuilder sb = new StringBuilder(); sb.AppendLine(“<?xml version=\”1.0\” encoding=\”UTF-8\”?> “); sb.AppendLine(“<urlset xmlns=\”http://www.sitemaps.org/schemas/sitemap/0.9\”> “); foreach (PageInfo pi in url) { sb.AppendLine(“<url>”); sb.AppendLine(string.Format(“<loc>{0}</loc>”,pi.loc)); sb.AppendLine(string.Format(“<lastmod>{0}</lastmod> “, pi.lastmod.ToString(“yyyy-MM-dd”))); sb.AppendLine(string.Format(“<changefreq>{0}</changefreq> “, pi.changefreq)); sb.AppendLine(string.Format(“<priority>{0}</priority> “,pi.priority)); sb.AppendLine(“</url>”); } sb.AppendLine(“</urlset>”); return sb.ToString(); } /// <summary> /// 保存Site文件 /// </summary> /// <param name=”FilePath”>路径</param> public void SaveSiteMap(string FilePath) { Voodoo.IO.File.Write(FilePath, GenerateSiteMapString());//保存在指定目录下 } } public class PageInfo { /// <summary> /// 网址 /// </summary> public string loc { get; set; } /// <summary> /// 最后更新时间 /// </summary> public DateTime lastmod { get; set; } /// <summary> /// 更新频繁程度 /// </summary> public string changefreq{get;set;} /// <summary> /// 优先级,0-1 /// </summary> public string priority { get; set; } } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部