关于如何自定义Aspcms的日期显示的样式-♚纪实阁付涛♚

关于如何自定义Aspcms的日期显示的样式

添加Y、M、D定义函数

找到文件:inc/AspCms_CommonFun.asp

搜索:Function formatDate(Byval t,Byval ftype)找到

select case cint(ftype)
    case 1
        ' yyyy-mm-dd
        formatDate=y & "-" & m & "-" & d
    case 2      
        ' yy-mm-dd
        formatDate=right(y,2) & "-" & m & "-" & d
    case 3      
        ' mm-dd
        formatDate=m & "-" & d
    case 4
        ' yyyy-mm-dd hh:mm:ss
        formatDate=y & "-" & m & "-" & d & " " & h & ":" & mi & ":" & s
    
    case 5
        ' hh:mm:ss
        formatDate=h & ":" & mi & ":" & s
    case 6
        ' yyyy年mm月dd日
        formatDate=y & "年" & m & "月" & d & "日"
    case 7
        ' yyyymmdd
        formatDate=y & m & d
    case 8
        'yyyymmddhhmmss
        formatDate=y & m & d & h & mi & s
end select

然后在 case 8后添加

    case 9
        ' y
        formatDate=y
    case 10
        ' m
        formatDate=m
    case 11
        ' d
        formatDate=d

增加函数判断

找到文件:inc/AspCms_MainClass.asp,搜索:case "date",找到:

case "yy-m-d"
        nloopstr = replace(nloopstr,matchfield.value,FormatDate(rsObj(6),1))
    case "y-m-d"
        nloopstr = replace(nloopstr,matchfield.value,FormatDate(rsObj(6),2))
    case "m-d"
        nloopstr = replace(nloopstr,matchfield.value,FormatDate(rsObj(7),3))
end select

然后在 case "m-d"后添加:

case "new"
                nloopstr = replace(nloopstr,matchfield.value, datediff("d",rsObj("AddTime"),now()))
   case "yy"
                nloopstr = replace(nloopstr,matchfield.value,FormatDate(rsObj("AddTime"),9))
   case "mm"
                nloopstr = replace(nloopstr,matchfield.value,FormatDate(rsObj("AddTime"),10))
   case "dd"
                nloopstr = replace(nloopstr,matchfield.value,FormatDate(rsObj("AddTime"),11))

修改之后,就可以用[list:date style=yy][list:date style=mm][list:date style=dd]来独立显示年月日了。
还可以通过判断{if:[[list:date style=new]<7]}class=new{end if}来为最近7天更新的新闻增加样式或者new图标了。

如果还想显示英文的月份,就需要AspCms_CommonFun.asp中的case 10的内容

添加CASE选择项

打开inc/AspCms_CommonFun.asp,搜索:Function formatDate(Byval t,Byval ftype),找到:

case 10
       ' m
       formatDate=m

修改case 10为:

case 10
        ' m
        select case m
            case 1
            m="January"
            case 2
            m="February"
            case 3
            m="March"
            case 4
            m="April"
            case 5
            m="May"
            case 6
            m="June"
            case 7
            m="July"
            case 8
            m="August"
            case 9
            m="September"
            case 10
            m="October"
            case 11
            m="November"
            case else
            m="December"
        end select
        formatDate= m

这样调用[list:date style=mm]是显示的就是英文的月份了。

怎么样,是不是很简单,轻轻松松就可以定义自己想要的日期时间的样式了。

本文由 ♚纪实阁付涛♚ 作者:谍豹云销 发表,其版权均为 ♚纪实阁付涛♚ 所有,文章内容系作者个人观点,不代表 ♚纪实阁付涛♚ 对观点赞同或支持。如需转载,请注明文章来源。

发表评论