温州在线手机站

温州 > 科技 > 互联网 > 网站建设 > 搜索优化 >

首页随机调用文章数据库指定数量URL标签提高收(2)

  首先,需要注意的是,这时在后台自定义标签管理里新建的是一个函数标签,标签名称可以命名为{$MY_随机文章}。

  查询语句设置为:(“top10”中的10是要查询的文章数,可以自己改,但不建议修改得太大;如果不想按栏目调用,而是调用某一个频道下的文章,那么可以把ChannelID in ({input(0)}) and ClassID in ({input(1)}) 修改为:ChannelID in ({input(0)}) ,相应的,调用标签就是:{$MY_随机文章(频道ID)}了 ;“DateDiff(\"d\",date(),UpdateTime)<7”中的7是指查询最近7天的文章,根据需要修改;)

  select top 10 ArticleID,ClassID,Title,UpdateTime from PE_Article where ChannelID in ({input(0)}) and ClassID in ({input(1)}) and DateDiff(\"d\",date(),UpdateTime)<7 and Deleted={$PE_False} and Status=3 Order by right(cstr(Rnd(-int(ArticleID+rnd(-timer())*100)))*1000*Now(),2);

  标签内容设置为:

  {Loop}{Infobegin}

  {$Field(2,Text,44,2,1)}

  {Infoend}{/Loop}

  其次,在模板里适当位置加入{$MY_随机文章(频道ID,栏目ID)}即可进行调用,其中频道ID、栏目ID可以根据自己实际进行修改。

  需要注意的是,好的效果是在损失性能的前提下实现的,不比SQL数据库的动态标签,这个标签的代码效率很低,虽然标签保证了随机性,如果是生成静态的,那生成的每个页面都不一样,每次生成也都不一样。但是虚拟主机用户当CPU峰值小于5%的时候,而你又要生成静态页面的话,生成文章超过700篇就有可能造成进程当机了。建议在生成大量静态页面的时候,寻找访客较少的时候进行,并且一次尽量少生成一些。也可以修改动易安装目录下的Config.asp文件:

  Const MaxPerPage_Create = 10 \'一次生成的数量,把他改小一些,Const SleepTime = 3 \'生成的间隔时间,把他改大一些。

(责任编辑:温州视线老金)