网站运营
位置:首页>> 网站运营>> 让你的动易自动生成站内链接之二

让你的动易自动生成站内链接之二

 来源:asp之家 发布时间:2009-09-18 14:39:00 

标签:动易,站内,链接

继上次写了篇《让你的动易SW6自动生成站内链接》后有朋友提到了一个问题。如果说我不想重新生成文章,但又想把原来的这些文章的标题添加到站内链接,因为生成文章太慢太耗时间了。

  嗯,这个问题的确是值得我们关注的,因为大部分朋友的网站的内容不是一两百篇的问题,而是成千上万篇。所以要把这些原来就存在的文章的站内链接添加进去,还真是一个超大的工程。那么好吧,生成文章是很花时间,那么我们就来个不生成文章,但是照样把这些原本就存在的文章的标题添加到站内链接中!

  Come on,下面就来Diy修改动易吧。提示:上篇文章中的函数是要用到的。所以没有看上篇文章的朋友请自己去查看。以前的代码就不再贴上来了,不要因为没有添加上篇文章中的代码出错又来找我!

  1、找到Admin/Admin_CreateArticle.asp 文件,在Call CreateIndex语句后面添加如下语句

Case "CreateIndex"
Call CreateIndex

'以下部分为新添加的代码部分,添加的位置可以自己选择。
Case "UpdateKeyLink"
Call UpdateKeyLink

  2、在Admin/Admin_CreateArticle.asp 文件最后面添加以下函数:

  说明:以下函数其实只是用到该页面中生成文章的函数代码,然后把文件写入部分,以及其他读取和替换模板部分这些我们并不需要的部分给去掉了,这也是为什么这个自动生成站内链接功能可以这么快的原因,可能不是精简得最好的,你可以自己看下有什么可以再精简的。

Sub UpdateKeyLink()
'On Error Resume Next
ChannelID = PE_CLng(Request("ChannelID"))

Dim sql, strFields, ArticlePath
Dim strArticleContent
Dim tmpArticle, tmpTemplateID

sql = "select * from PE_Article where Deleted=" & PE_False & " and Status=3 and ReceiveType=0 and InfoPoint=0 And InfoPurview=0 and ChannelID=" & ChannelID&" order by UpdateTime desc,ClassID,ArticleID"

If IsAutoCreate = False Then
Response.Write "<b>正在生成" & ChannelShortName & "页面……请稍候!<font color='red'>在此过程中请勿刷新此页面!!!</font></b><br>"
Response.Flush
End If
Set rsArticle = Server.CreateObject("ADODB.Recordset")
rsArticle.Open sql, Conn, 1, 1
If rsArticle.Bof And rsArticle.EOF Then
TotalCreate = 0
iTotalPage = 0
rsArticle.Close
Set rsArticle = Nothing
Exit Sub
Else
If CreateType = 9 Or (CreateType = 8 And CreateItemType = 3)Then
TotalCreate = PE_Clng(Conn.Execute("select count(*) from PE_Article where Deleted=" & PE_False & " and Status=3 and ReceiveType=0 and InfoPoint=0 And InfoPurview=0 and ChannelID=" & ChannelID & " and (CreateTime is null or CreateTime<=UpdateTime)")(0))
Else
TotalCreate = rsArticle.RecordCount
End If

End If

PageTitle = ""
strFileName = ChannelUrl_ASPFile & "/ShowArticle.asp"
   
Call MoveRecord(rsArticle)
Call ShowTotalCreate(ChannelItemUnit & ChannelShortName)
Do While Not rsArticle.EOF
FoundErr = False
ArticleID = rsArticle("ArticleID")
ClassID = rsArticle("ClassID")
If CreateType = 7 Then ChannelID = rsArticle("ChannelID")
strNavPath = tmpNavPath
Call GetChannel(ChannelID)
Call GetClass
strPageTitle = tmpPageTitle
iCount = iCount + 1

If ClassPurview > 0 Or rsArticle("InfoPurview") > 0 Or rsArticle("InfoPoint") > 0 Then
Response.Write "<li><font color='red'>ID为 " & rsArticle("ArticleID") & " 的" & ChannelShortName & "因为设置了阅读权限,所以没有生成。</font></li>"
Response.Flush
Else
SpecialID = 0
CurrentPage = 1
ArticlePath = HtmlDir & GetItemPath(StructureType, ParentDir, ClassDir, rsArticle("UpdateTime"))
ArticleTitle = Replace(Replace(Replace(Replace(rsArticle("Title") & "", " ", " "), """, Chr(34)), ">", ">"), "<", "<")
ArticlePath = ArticlePath & GetItemFileName(FileNameType, ChannelDir, rsArticle("UpdateTime"), ArticleID)
tmpFileName = ArticlePath & FileExt_Item

Call CreatKeyLink(ArticleTitle, tmpFileName, 1)

End If
If Response.IsClientConnected = False Then Exit Do
If iCount Mod MaxPerPage_Create = 0 Then Exit Do
rsArticle.MoveNext
Loop
rsArticle.Close
Set rsArticle = Nothing
End Sub

以上函数有点熟悉吧,对就是把这个页面前面生成文章页面的函数修改了一下,把多余的,以及写入文件的部分不要了。换成了更新站内链接。

3、在Admin/Admin_Index_Left.asp 中增加后台接口

在此页面中找个适当的位置添加以下代码

Response.Write "<tr><td height=20><a href='Admin_CreateProduct.asp?ChannelID=1000&Action=UpdateKeyLink' target='main'>更新站内链接</a></td></tr>"

好了,完成了,超简单吧?三步完成,现在把后台刷新一下,然后在左侧导航中是不是多了个“更新站内链接”?好了,点击它试下?

PS:因为代码部分我是修改了很多地方的,此代码你移植过去可能会有些小问题,有什么问题可以发邮件给我,记住,请写清楚你所遇到的问题,以及错误描述。否则不回复,谢谢合作。

0
投稿

猜你喜欢

  • 作为个人站长,相信很大一部分的流量是来自百度,如果你做网站只要是想依靠网站来获取收入,那么可以说百度就是网站生存的衣食父母。当然除了一小部分
  • 中国的站长比中国的牛还多;吹牛的站长比喝啤酒吹酒瓶的人要多,不会吧?看到某篇文章这么写的。个人做站,很多人为了兴趣,业余做站,交流思想技术交
  • QQ这个聊天工具,对于很多在互联网打滚多年的站长朋友来说,应该不会陌生,可能其中不少人还是QQ这个品牌成长的见证者。以我个人对腾讯,对QQ的
  •  <script src="{dede:field name='phpurl'
  • 很多用户问Godaddy的Windows主机是否支持PHP。其实,是支持PHP,但是windows主机的php运行在安全模式,很多函数都是禁
  • 做站长已经有好几年了,每次都在失望中结束。经过一番冷静思考以后,才知道经营网站不是想象的那么容易,一是需要下功夫,二是需要坚持。下功夫是要懂
  • 2008年4月初开始了健康之家的建设,就从代理商那里买了空间域名,开始建站。一开始用了风讯CMS新闻发布系统,架构好网站以后,因为自己是学生
  • 近日在IT龙门阵被面授了一些大淘宝战略的玄机,先说点题外的话,PPT写的很精彩,特别是提供了一些比较新颖的图,另外淘宝的对外宣讲的纪律性也非
  • 今天的主题是 怎样将seo融入到编辑的日常工作中。首先网页的内容优化是建立在网站的结构优化、代码优化、功能优化等基础上的,只有一个对搜索引擎
  • 当您试图利用FTP连接到一台远程计算机时,远程系统会向您要求一个用户名及口令,而在浩如烟海的Internet中要求每个用户向每个服务器系统申
  • 很多新手的站长感觉建站难了、维护难了、推广更难了,一是由于国内禁止个人注册CN域名导致建站成本迅速上升,二是国家对网络管理异常严格,所有与色
  • 虽然这些年来,每一个新发布的新版Exchange Server都保留了先前版本的一些特征,但是某些版本和其他的版本相比较而言,还是有了更多的
  • 1、当系统启动显示操作系统列表时, 按F8 出现高级启动选项;a. Safe mode: 只加载基本的服务和驱动。用于解决安装了额外的硬件驱
  • 核心提示: 何时执行目标导向内容优化战略?当你确定目标,并有耐心评估网站表现时,这一战略就起作用。当然,这一过程可能花一些时间,需要不断进行
  • # 程序崩溃时不记录 kern.coredump=0 # lo本地数据流接收和发送空间 net.local.stream.recvspace
  • 11月13日消息,10月底,土豆网与正式成为中国移动手机视频原创频道的独家运营合作伙伴和内容提供商。昨天,土豆网和中影集团宣布联合制作第一部
  • 随着信息化办公的普及,远程访问的需求也水涨船高。一些远程访问工具,也纷纷面世。如电子邮件、FTP、远程桌面等工具为流离在外的企业员工,提供了
  • 有许多新的搜索引擎(最新统计有100多个)都在开创一些搜索技术的创新。下面是一份17大搜索创新清单,我们认为,这些创新将来会是破坏性的(译者
  • 6月4日至6月10日,短短5个交易日内,腾讯控股累积重挫15%,放量击穿年线,而同期香港恒生指数基本保持持平。拥有同时在线人数超过 1亿的Q
  • 这篇文章是由José M. Aguilar在他卓越的博客中以西班牙语的形式首发,其后Timm Martin在获得Aguilar先生的授权下,
手机版 网站运营 asp之家 www.aspxhome.com