/// <summary>
/// 生成google网站地图
/// </summary>
/// <returns></returns>
public static bool BuildGoogleSitemap()
{}网上找了一下,很多都贴出了这段代码!怎么执行!
/// 生成google网站地图
/// </summary>
/// <returns></returns>
public static bool BuildGoogleSitemap()
{}网上找了一下,很多都贴出了这段代码!怎么执行!
{
if (BuildGoogleSitemap())
{
Response.Write("地图生成成功!");
}
}
ConfigurationManager.AppSettings["WebSiteUrl"].ToString()
这段代码,你可以在web.config的相应节点设置WebSiteUrl(网站url)或者手工改成字符串如:
"http://www.csdn.net"
- <urlset xmlns="http://www.google.com/schemas/sitemap/0.84">
- <url>
<loc />
</url>
</urlset>生成后就这样的xml
把这个改成你的站点url,如果你还没发布站点,在vs调试界面预览的时候,可以改成:
http://ip:端口号/虚拟目录/
测试。如果你已经发布网站了,就改成站点url=> http://www.yourdomain.com
这个已经过时了 需要使用这个
ConfigurationManager.AppSettings["WebSiteUrl"].ToString()
- <urlset xmlns="http://www.google.com/schemas/sitemap/0.84">
- <url>
<loc />
</url>
</urlset>生成后就这样的xml,什么都没有
http://localhost:3552/website1/,那么就把下面这段:
Writer.WriteString(ConfigurationManager.AppSettings["WebSiteUrl"].ToString() + sb.ToString());
变成:
Writer.WriteString("http://localhost:3552/website1/" + sb.ToString());
再运行,就会发现GoogleSitemaps.xml里会有你站点里的所有文件
在更新产品页面里自己拼xml字符串,追加到GoogleSitemaps.xml里面。你可以把这个写成一个方法,在需要用的地方调用即可
http://localhost:3552/website1/Product.aspx?pid=6889那么你就需要更新一下你的googlesitemaps.xml,在xml中加入这段
<url>
<loc>http://localhost:3552/website1/Product.aspx?pid=6889</loc>
<lastmod>2010-09-08</lastmod>
<changefreq>always</changefreq>
<priority>0.8</priority>
</url>xml操作,百度一下
public void GetXml(Productss newItem)
{ XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("~/GoogleSitemaps.xml"));
XmlNode node = doc.DocumentElement.ChildNodes[0].Clone();
XmlNode n = doc.SelectSingleNode("/urlset/url/loc");
string prducturl = ""; //要添加谷歌网站地图文件去的节点
string ptname = ProductsTypesManager.GetProductsTypesByPtId(newItem.PTypeid).PtName.ToString();
ptname = Server.UrlDecode(ptname.Replace(" ","-"));
string productname = newItem.PName.ToString();
productname = Server.UrlDecode(productname.Replace(" ","-"));
prducturl = "/product/"+ptname+"/"+productname+"/"+newItem.PId; n.InnerText = prducturl;
doc.DocumentElement.AppendChild(node);
doc.Save(Server.MapPath("~/GoogleSitemaps.xml"));
} n.InnerText = prducturl;报未将对象引用到实例中 声明一下n.InnerText 是 string XmlNode 类型prductur是string 类型转换该怎么转啊!