凌波网络,常州网络公司,常州网站设计,常州小程序,常州小程序开发公司,常州网站建设,常州微信公众号维护
ASPCMS后台生成百度SITEMAP不被百度识别的解决办法
2020-4-19 11:34:33

   ASPCMS建站程序后台生成的.xml格式的百度地图 Sitemap 不符合百度的要求,不能直接在百度站长平台里面调用,出错原因是百度站长工具里的SITEMAP无法识别读取等标签!这个标签不符合百度Sitemap协议标准,那么百度 Sitemap协议都支持哪些格式呢?
   百度Sitemap协议支持三种格式:文本格式、xml格式、Sitemap索引格式!
   ASPCMS建站程序后台生成的就是xml格式,对于这种格式文件,百度Sitemap协议
单个xml数据格式如下:(这个在百度站长平台中有)
 
XML文件需以utf-8编码
必填,这是整个链接集合的定义入口,以作为开始,作为结束
必填,这是具体某一个链接的定义入口,每一条数据都要用包含在里面。
http://www.yoursite.com/yoursite.html
必填,页面链接地址,长度不得超过256字节。
2009-12-14
选填,用来指定该链接的最后更新时间
daily
选填,用这个标签告诉此链接可能会出现的更新频率
0.8
选填,可以不提交该标签,用来指定此链接相对于其他链接的优先权比值,此值定于0.0-1.0之间
必填,标签闭合
必填,标签闭合

那么,如何修改呢?我们用 DREAMWEAVER或记事本
打开 ASPCMS根目录/后台目录/_seo/AspCms_MakeHtmlFun.asp 这个文件,
搜索(查找)“生成Baidu 站点地图”
找到下面的一段代码:
baiduStr = "http://"&setting.siteUrl&sitePath&setting.languagePath&""&setting.siteTitle&"1800" for j=1 to rsObj.pagesize vDes=rsObj("ContentTag") : if isNul(vDes) then vDes="" vName=rsObj("Title") : if isNul(vName) then vName="" Dim link link="http://"&setting.siteUrl&TemplateObj.getContentLink(rsObj("SortID"),rsObj("ContentID"),rsObj("SortFolder"),rsObj("a.GroupID"),rsObj("ContentFolder"),rsObj("ContentFileName"),rsObj("AddTime"),rsobj("PageFileName"),rsObj("b.GroupID")) baiduStr = baiduStr & " "&link&""&server.htmlencode(filterStr(left(vDes, 300),"html"))&"" If left(rsObj("ImagePath"), 7) = "http://" Then baiduStr = baiduStr & "ASPCMS后台生成百度SITEMAP不被百度识别的解决方法!"&rsObj("ImagePath")&""&vbcrlf Else baiduStr = baiduStr & "ASPCMS后台生成百度SITEMAP不被百度识别的解决方法!http://"&setting.siteUrl&sitePath&rsObj("ImagePath")&""&vbcrlf End If dt=rsObj("AddTime") baiduStr = baiduStr & ""&rsObj("Title")&","&rsObj("Author")&""&setting.siteTitle&""&setting.siteTitle&" "&formatDate(dt,1)&" " rsObj.movenext if rsObj.eof then exit for next baiduStr = baiduStr + "" tempUrl = sitePath&setting.languagePath&"baidu"&xmlUrl&"_"&i&".xml" createTextFile baiduStr,tempUrl,"utf-8"
  然后将整块儿代码全部替换为下面的代码:
baiduStr = "" for j=1 to rsObj.pagesize vDes=rsObj("ContentTag") : if isNul(vDes) then vDes="" vName=rsObj("Title") : if isNul(vName) then vName="" Dim link link="http://"&setting.siteUrl&TemplateObj.getContentLink(rsObj("SortID"),rsObj("ContentID"),rsObj("SortFolder"),rsObj("a.GroupID"),rsObj("ContentFolder"),rsObj("ContentFileName"),rsObj("AddTime"),rsobj("PageFileName"),rsObj("b.GroupID")) baiduStr = baiduStr & ""&link&"" dt=rsObj("AddTime") baiduStr = baiduStr & ""&formatDate(dt,1)&"" rsObj.movenext if rsObj.eof then exit for next baiduStr = baiduStr + "" tempUrl = sitePath&setting.languagePath&"baidu"&xmlUrl&"_"&i&".xml" createTextFile baiduStr,tempUrl,"utf-8"
  保存后登陆ASPCMS后台重新生成百度SITEMAP!
然后我们再在百度站长平台上的 SITEMAP - 手动更新文件,稍等片刻。。。。OK了!
ASPCMS后台生成百度SITEMAP不被百度识别的解决方法!





作者:久忆YK网络 (来源:久忆YK网络
Design By 凌波网络 Since 2004
本站由 为凌波网络(www.lingboinfo.com)提供云计算与安全服务 苏ICP备12074670号-1