产品使用及交流论坛

首页 » 产品使用交流区 » 安装及使用交流 » 教你自动给最近三天内的文章加new图标
kanghaoran - 2010/6/4 19:14:00
最近在论坛上看到有许多朋友想自动给文章列表使用new图标,有朋友也向我探讨这个问题,下面我就来教你如何自动给你的文章加上new图标,时间一过就自动消失。看此贴的人不要忘了回贴,请尊重作者的劳动成果。
1、在记事本中复制如下代码:
<%@ Language="vb" aspcompat="true" %>
<% Response.Buffer ="true" %>

<%
        dim conn
        dim sql
        
        Conn=Server.CreateObject("ADODB.Connection")
        Conn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("/kanghaoran/kanghaoran.mdb") & ";Mode=ReadWrite|Share Deny None;Persist Security Info=False")'红色部分表示数据库文件路径,请改为你自己的路径。
        sql="UPDATE [information] SET  [title_style] ='' where [title_style] NOT LIKE '%color:%' or  [title_style] is null"
        Conn.Execute(sql)        
        sql="UPDATE [information] SET  [title_style] = 'background:url(/kanghaoran/kanghaoran/new.gif) no-repeat 100% 0px ; padding: 1px 33px 0px 0px;' WHERE [title_style] NOT LIKE '%color:%' AND [thedate] BETWEEN DateAdd('d', -3, NOW()) AND NOW()"'将红色部分设置为你的new图标位置。DateAdd('d', -3, NOW()) 一句中的-3表示自动给最近3天内的文件加上new图标,也可以根据需要改为其它数字,时间一过就会自动消失的。
        Conn.Execute(sql)
        
        Conn.close
        Conn=Nothing
        Response.Redirect("index.aspx")'将红色部分设置为你的主页。
%>
2、将上面的代码存为default.aspx文件。放置到你网站所在的根目录。
3、在iis中配置主页为你刚才建立的default.aspx文件。
4、一切ok,剩下的就是偷着乐。
最新说明请看13楼的内容。
tianshi - 2010/6/4 20:31:00
舍本逐末,主页变成空白页面,这样做的结果就是seo优化没有了
kanghaoran - 2010/6/4 23:06:00
没有考虑到楼上所提出的这个问题,seo优化与这个有关吗?我将此代码设置为主页的目的只是为了减少程序调入的次数,果真如楼上所说,也很简单,将之加入一个自定义模块,然后在首页中调用就可以了。步骤修改如下:
1、用记事本打开/zdymodel/template_zdymodel.aspx文件,将   <% @ Control language="c#" Inherits="PageAdmin.detail_zdymodel"%>这一句中的"c#" 改为"vb"。
2、建立自定义模型:在模块模型数据列表区中输入以下代码:
<%
        dim conn
        dim sql
        
        Conn=Server.CreateObject("ADODB.Connection")
        Conn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("/kanghaoran/kanghaoran.mdb") & ";Mode=ReadWrite|Share Deny None;Persist Security Info=False")'红色部分表示数据库文件路径,请改为你自己的路径。
        sql="UPDATE [information] SET  [title_style] ='' where [title_style] NOT LIKE '%color:%' or  [title_style] is null"
        Conn.Execute(sql)        
        sql="UPDATE [information] SET  [title_style] = 'background:url(/kanghaoran/kanghaoran/new.gif) no-repeat 100% 0px ; padding: 1px 33px 0px 0px;' WHERE [title_style] NOT LIKE '%color:%' AND [thedate] BETWEEN DateAdd('d', -3, NOW()) AND NOW()"'将红色部分设置为你的new图标位置。DateAdd('d', -3, NOW()) 一句中的-3表示自动给最近3天内的文件加上new图标,也可以根据需要改为其它数字,时间一过就会自动消失的。
        Conn.Execute(sql)
        
        Conn.close
        Conn=Nothing
%>
3、按保存按扭,保存自定义模型。
4、在首页中新建一模块,类型为自定义模型,在模型调用中调用刚才建立的自定义模型。设置一个自义样式,在外层容器样式中输入"display:none";并调用自定义样式用于刚才建立的模块,以达到隐藏此模块的目的(但不等同于真正的隐藏,只是看到不而已,否则程序无法运行.)
5、刷新网页,如果没有效果,多刷新几次(或重新进入主页),如果访问你网站的人员较多,就不存在此情况了,ok,你成功了吗?( 可以参见http://bamiaoxx.gicp.net)上的效果。
Amazing - 2010/6/5 15:42:00
好像不行哦
Amazing - 2010/6/5 17:43:00
你这样
是不是主机还得安装vb?
song - 2010/6/5 23:21:00
“建立自定义模型:在模块模型数据列表区中输入以下代码”模块模型数据列表区在哪呀?
gearfox - 2010/6/6 14:46:00
谢谢您的经验分享
song - 2010/6/7 22:22:00
“建立自定义模型:在模块模型数据列表区中输入以下代码”模块模型数据列表区在哪呀?
Amazing - 2010/6/10 16:24:00
还是没弄明白,请楼主 明示啊
brand8412 - 2010/6/10 17:36:00
看着还不错
song - 2010/6/12 18:00:00
“建立自定义模型:在模块模型数据列表区中输入以下代码”模块模型数据列表区在哪呀?
kanghaoran - 2010/6/12 19:10:00
好久没有登陆论坛了,今天登陆后发现看这个贴子的人很多,但可惜回贴的人很少,又发现仍然有许多朋友没有将这个效果做出来,我现在就将详细的步骤说出来,做出效果的人不要忘记了回贴,这也是对作者劳动的肯定。
首先声明的是我用VB语言写代码,只是因为我对这种语言比较熟悉,看到很多朋友对此存有疑惑,那么我就改用系统默认的C#,这样你也不必改相应的模块文件了,同时对相应的代码也做了一些调整,让你使用起来更方便,改动的地方更少。
1、登陆后台,在表单模型管理中新建一自定义表单,随便什么名字都可以,字段建不建立无所谓,建立这个空表单的目的只是因为系统默认建立自定义模型必须要调用表单,实际上这个表单不起什么作用;
2、在表单模型管理中新建一自定义模型(这个步骤还不会?到富士康去报道吧)
3、在自定义模型管理中点击模型设置,在相应出现的对话框中点击模块模型(导航模型也可以,随便哪个模型无所谓,我用模块模型只是为了教程方便。)
4、复制以下代码到数据列表区:
<% @ Import  NameSpace="PageAdmin"%>
<% @ Import  NameSpace="System.Data"%>
<% @ Import  NameSpace="System.Data.OleDb"%>
<% Response.Buffer=true; %>

<%      
        Conn myconn ;
        OleDbConnection myOleDb ;
        OleDbCommand comm;
        string conPath,sql;

               myconn=new Conn();
        conPath=myconn.Constr();

        myOleDb=new OleDbConnection(conPath);
        myOleDb.Open();

        sql="UPDATE [information] SET  [title_style] ='' where [title_style] NOT LIKE '%color:%' or  [title_style] is null";
        comm=new OleDbCommand(sql,myOleDb);
        comm.ExecuteNonQuery();

        sql="UPDATE [information] SET  [title_style] = 'background:url(/images/new/new.gif) no-repeat 100% 0px ; padding: 1px 33px 0px 0px;' WHERE [title_style] NOT LIKE '%color:%' AND [thedate] BETWEEN DateAdd('d', -3, NOW()) AND NOW()";//不要忘记了替换为你自己的new图标位置,至于new图标保留几天,改-3这个数字吧.
        comm=new OleDbCommand(sql,myOleDb);
        comm.ExecuteNonQuery();

        myconn=null;
        comm=null;
        myOleDb.Close();
        myOleDb=null;
%>
5、保存此自定义模型。
6、在首页中新建一模块,类型为自定义模型,在自定义模型设置中调用刚才建立的自定义模型。
7、设置一个自义样式,在外层容器样式中输入"display:none";并调用自定义样式用于刚才建立的模块,以达到隐藏此模块的目的(但不等同于真正的隐藏,只是看到不而已,否则程序无法运行.)
8、重新进入主页,如无效果,多刷新几次。你成功了吗?如果你还不成功,也许你的代码输入有误,请仔细检查你的代码。成功后不要忘记来报到。
song - 2010/6/13 11:14:00
请把第7步再详细一点,比如“设置一个自定义样式是在哪设置的,调用它到刚建立的模块又是怎样调用的,我很菜,你别笑话。
Amazing - 2010/6/13 17:44:00
1632

出现这个错误   怎么回事?  还是不行啊
yyroom - 2010/6/13 22:24:00
嗯,第七步没有看懂
kanghaoran - 2010/6/14 20:21:00
pa很强大,一些基本的东西得先自己去摸索,如果样样都靠别人去解决,对自己的技术提升是很慢的。如果连自定义样式还不会,那你得再把整个系统再熟悉一下。你说是吧?至于15楼的问题,因为我这里没有遇到类似的情况,所以无法说清,看你的代码。应该没有问题。在代码前面用debug命令调试一下,看看具体是什么情况,再根据相应情况做处理吧。感谢大家对此贴的支持。
song - 2010/6/16 19:14:00
我照着做成了,可就是出不来new图标,我怀疑是不是数据库必须是SQL,我现在是MDB的
kanghaoran - 2010/6/17 10:06:00
跟数据库没有关系,如果没有错误提示的话,看看是不是你的new图标位置或名字(含扩展名)不对,或者重新进入主页就可以了。
song - 2010/6/22 23:08:00
我反复多次检查过了,照着楼主的方法一步没错的做好,代码是复制进去用的,而且new图标位置或名字(含扩展名)全部正确,但就是刚发的文章出不来new图标呀,到底怎么回事???
xcrane - 2010/8/18 0:15:00
我没去测试这个,不过很佩服楼主的无私奉献,赞:strong:
sygatary - 2010/8/18 9:24:00
感谢楼主,顶一下,我也去试试,希望能成功!
xcrane - 2010/8/28 23:55:00
应朋友要求测试这个功能的实施,已经做出效果,非常的不错,谢谢楼主的无私奉献
有朋友说第七步不明白,其实你们没有认真去了解PA的功能。连最基本的都不想去了解,谈何做出好的网站
我简单再帮楼主说明一下
1、自定义样式,比如楼主说的是模块,那我就用模块样式设置
后台-》网站栏目管理-》模块样式设置-》增加新样式-》增加后在上方有你刚增加的样式(点击后方)-》样式设置-》外层容器样式-》"display:none" (这个一定要去掉“”引号,否则会在首页出现个框框),保存
2、再进-》自定义模型设置 -》自定义样式-》模块风格-》选择你刚才自定义的模块样式-》默认模块标志选择隐藏(否则会在首页多出一个模块)-》保存
3、完成楼主说完的步骤如果还不出来的话,点击-》 表单模式管理 下方刚添加的表单-》增加数据-》提交
再去首页刷新页面,如果还不出来,你就不可能做出来了  
http://www.sh-qingliang.com 我做的效果,提供参考

再次感谢楼主的无私,希望能与楼主交个朋友
brand8412 - 2010/8/30 12:06:00
首页都打不开了,怎么回事。。
xcrane - 2010/8/31 17:45:00
不好意思,网站被黑,现在恢复正常
gearfox - 2010/8/31 23:23:00
sql server的呢?
xcrane - 2010/9/1 22:16:00
美女,在这儿冒个SQL SERVER是啥意思,不能理解,能介绍一下吗
http://www.sh-qingliang.com
caobaikui - 2010/9/24 15:14:00
我在本地测试的时候还是可以的,传到服务器上就提示错误,说字段太小,无法添加数据。
caobaikui - 2010/9/24 15:32:00
终于成功了,参见:http://ysx.jsit.edu.cn
Amazing - 2010/9/25 11:20:00
如何让导航栏的文章列表不显示“new”图标呢?
求助楼主...
Amazing - 2010/9/26 8:26:00
顶上去
123
查看完整版本: 教你自动给最近三天内的文章加new图标