动易CMS6.8 在文章表中没有保存文章的URL地址,这在搜索引擎批量索引数据时,无法获取文章链接地址。下面是解决方法,
将以下代码复制到一个新文件中如geturls.asp,将放到动易CMS文件夹中,通过IE输入 http://您的域名/geturl.asp就可以看到动易的文章表(PE_Article)中将会增加一个新的字段:ArtsUrl,这字段保存的即是文章的链接地址。
geturls.asp
<%@language="vbscript" codepage="936" %> <% Server.ScriptTimeOut=999999 Response.Buffer = True Dim BeginTime BeginTime = Timer %> <!--#include file="Conn.asp"--> <!--#include file="Config.asp"--> <!--#include file="Include/PowerEasy.Common.Content.asp"--> <% call OpenConn() dim rs,lnk,siteurl set rs=conn.execute("select SiteUrl from PE_Config") if not rs.eof then siteurl=rs(0) end if rs.close set rs=nothing UseCreateHTML=1 conn.execute("alter table PE_Article add ArtsUrl varchar 200") set rs=conn.execute("SELECT top 100 a.ArticleID,a.UpdateTime, l.ChannelDir , c.ParentDir , c.ClassDir,l.FileNameType,l.FileExt_Item FROM PE_Article a , PE_Class c ,PE_Channel l where a.ClassID = c.ClassID and a.ChannelID = l.ChannelID") while not rs.eof select case rs(6) case 0 FileExt_Item=".html" case 1 FileExt_Item=".htm" case 2 FileExt_Item=".shtml" case 3 FileExt_Item=".shtm" case 4 FileExt_Item=".asp" end select ChannelUrl=rs(2) ChannelDir=rs(2) FileNameType=rs(5) lnk=siteurl&"/" lnk =lnk& GetArticleUrl(rs(3), rs(4), rs(1), rs(0), 0, 0, 0) conn.execute("update PE_Article set ArtsUrl='"&lnk&"' where ArticleID="&rs(0)) response.Write("ID:"&rs(0)&"->"&lnk&"<br>") response.Flush() rs.movenext wend rs.close set rs=nothing call CloseConn() %> |