本站隆重推出全新栏目“淘宝网购物导航“:实时更新淘宝的各类促销活动、成交排行、优惠充值等信息,让您网购更加安心,放心,省心!

◆◆◆日志内分页功能◆◆◆

一、打开 cls_article.asp

①找到 sub ShowArticle(LogID),30 行左右,在下面加入:

'得到页面链接
Dim sUrl, ArrUrl
sUrl = "http://" & Request.ServerVariables("HTTP_HOST") & Request.ServerVariables("PATH_INFO") & "?" & Request.ServerVariables("QUERY_STRING")
If InStr(1,sUrl,"&",1) Then
    ArrUrl=Split(sUrl, "&")
    sUrl=ArrUrl(0)
End If

这段代码取得当前日志的链接,并滤掉后面的 &pages=x 参数


二、查找:
if log_ViewArr(10,0)=1 Then
    response.write (highlight(UnCheckStr(UBBCode(HtmlEncode(log_ViewArr(8,0)),mid(log_ViewArr(11,0),1,1),mid(log_ViewArr(11,0),2,1),mid(log_ViewArr(11,0),3,1),mid(log_ViewArr(11,0),4,1),mid(log_ViewArr(11,0),5,1))),keyword))
Else
    response.write(highlight(UnCheckStr(log_ViewArr(8,0)),keyword))
end if%>

修改为:
if log_ViewArr(10,0)=1 Then
    'response.write (highlight(UnCheckStr(UBBCode(HtmlEncode(log_ViewArr(8,0)),mid(log_ViewArr(11,0),1,1),mid(log_ViewArr(11,0),2,1),mid(log_ViewArr(11,0),3,1),mid(log_ViewArr(11,0),4,1),mid(log_ViewArr(11,0),5,1))),keyword))
    Call UBBSplitxx(sUrl)
Else
    'response.write(highlight(UnCheckStr(log_ViewArr(8,0)),keyword))
    Call FckSplitxx(sUrl)
end if%>

就是将原来的两条语句注释掉(也可以直接删除),换成两个子函数调用。

三、在尾部添加下面两个子函数

<%
'*******************************************
'  UBB 日志分页
'  修改时间:2007年12月17日
'*******************************************
Sub UBBSplitxx(sUrl)
    dim arrContent,Page,PageList,Content,PageCounter,x,xx,uu
    Content=highlight(UnCheckStr(UBBCode(HtmlEncode(log_ViewArr(8,0)),mid(log_ViewArr(11,0),1,1),mid(log_ViewArr(11,0),2,1),mid(log_ViewArr(11,0),3,1),mid(log_ViewArr(11,0),4,1),mid(log_ViewArr(11,0),5,1))),keyword)
    'UBB 编辑器可能会过滤“[pagesplitxx]”,所以我将分页符换成了 “[pagesp+litxx]”
    If InStr(1,cstr(Content),"[pagesp+litxx]",1)<>0 Then
        ArrContent=Split(Content,"[pagesp+litxx]")
        PageCounter=UBound(ArrContent)

        If PageCounter > 0 Then
            Page=Request.QueryString("pages")
            Page=CInt(Page)
            If Page<1 Then Page=1
            If Page-2>PageCounter Then Page=PageCounter+2

            For x=1 To PageCounter+1
                uu=sUrl & "&pages=" & x
                If Page=x Then
                    xx=" [<font color='#FF0000'>" & x & "</font>]"
                    PageList = PageList &  xx
                Else
                    xx= x
                    PageList = PageList & " [<a href='" & uu & "'>" & xx & "</a>]"
                End If
            Next
            uu = sUrl & "&pages=" & x
            If Page=PageCounter + 2 Then
                xx = " [<font color='#FF0000'>全文阅读</font>]"
                PageList = PageList & xx
            Else
                xx = "全文阅读"
                PageList = PageList & " [<a href='" & uu & "'>" & xx & "</a>]"
            End If

            If Page-1<=PageCounter Then
                Content=ArrContent(Page-1)
            End If
            x = PageCounter + 1
            Content=Content & "<hr><div align='right'>共 " & x & " 页:" & PageList & "</div>"
        End If
    End If
    response.write (content)
End Sub%>

<%
'*******************************************
'  FCK 日志分页
'  修改时间:2007年12月17日
'*******************************************
Sub FCKSplitxx(sUrl)
    dim arrContent,Page,PageList,Content,PageCounter,x,xx,uu
    Content=highlight(UnCheckStr(log_ViewArr(8,0)),keyword)
    If InStr(1,cstr(Content),"[pagesp+litxx]",1)<>0 Then
        ArrContent=Split(content,"[pagesp+litxx]")
        PageCounter=UBound(ArrContent)

        If PageCounter > 0 Then
            Page=Request.QueryString("pages")
            Page=CInt(Page)
            If Page<1 Then Page=1
            If Page-2>PageCounter Then Page=PageCounter+2

            For x=1 To PageCounter+1
                uu=sUrl & "&pages=" & x
                If Page=x Then
                    xx=" [<font color='#FF0000'>" & x & "</font>]"
                    PageList = PageList &  xx
                Else
                    xx= x
                    PageList = PageList & " [<a href='" & uu & "'>" & xx & "</a>]"
                End If
            Next
            uu = sUrl & "&pages=" & x
            If Page=PageCounter + 2 Then
                xx = " [<font color='#FF0000'>全文阅读</font>]"
                PageList = PageList & xx
            Else
                xx = "全文阅读"
                PageList = PageList & " [<a href='" & uu & "'>" & xx & "</a>]"
            End If

            If Page-1<=PageCounter Then
                Content=ArrContent(Page-1)
                '下面三行是标签补全,我的回车默认标签改为 <div> 了,所以补的是 </div> 和 <div>
                '如果你的是 <p> 的话,补全的标签也要相应修改为 </p> 和 <p>
                '插入分页符的时候,用回车换行,单独起一行来放分页符 [pagesp+litxx]
                If Page=1 Then Content=Content & "</div>"
                If Page-1=PageCounter Then Content="<div>" & Content
                If Page>1 And Page<=PageCounter Then Content="<div>" & Content & "</div>"
            End If

            x = PageCounter + 1
            Content=Content & "<hr><div align='right'>共 " & x & " 页:" & PageList & "</div>"
        End If
    End If
    response.write(Content)
End Sub%>

使用方法:
,你也可按自己的喜好替换。(为了不这个说明在这里分页,我在中间加"+"“[pagesp+litxx]”,用的时候加"+"去掉!)
①UBB 编辑模式语法标签可以直接看到,只要不在标签对中间插分页符就行了
②FCK 编辑器要用回车(注意不是Shift+回车)另起一段,将分页符 放在单独一个段落内,这样做是为了保证分页符一定会被一个段落标签对(<p>或<div>)包围,后面补全标签时才是有规律的。

如果你cls_article.asp没有修改过,可以用附件里我修改好的!

接着就是在编辑器里插入符号啦!

将文件:common和FCKeditor 两个文件夹上传到根目录里,最好做好备份哦!
将图片 pagesplitxx.gif 上传至 /UBB/Icons/ 里!
完成!

点击下载此文件

评论: 1 | 引用: 0 | 查看次数: -

笨花
回复回复笨花 [2008-02-05 02:45:39 | del | 取消审核]
注意使用的时候把代码里面的“+”去掉

发表评论
昵 称:
密 码:    游客发言不需要密码.
邮 箱:    支持Gravatar头像
网 址:
验证码:    点击输入框
内 容:
您一共可以输入1000个字
选 项:
不想保留信息请删除cookie
发表评论后您发表的内容自动复制到了剪贴板
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭