• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    dedecms列表页分页效果变形的问题解决
    POST TIME:2021-05-23 01:35

    我们在dedecms做模板时候,列表页有<li>代码,会引起页面变形

     

    这个修改具体是要修改arc.archives.class.php于arc.listview.class.php文件

     

     

     

    以下附件是V5.6UTF8版本修改后的文件

     

    arc.archives.class.php

     

    <?php 

    if(!defined('DEDEINC'))  

    {  

        exit("Request Error!");  

    }  

    require_once(DEDEINC."/typelink.class.php");  

    require_once(DEDEINC."/channelunit.class.php");  

    require_once(DEDEINC."/downmix.inc.php");  

    require_once(DEDEINC.'/ftp.class.php');  

     

    @set_time_limit(0);  

    class Archives  

    {  

        var $TypeLink;  

        var $ChannelUnit;  

        var $dsql;  

        var $Fields;  

        var $dtp;  

        var $ArcID;  

        var $SplitPageField;  

        var $SplitFields;  

        var $NowPage;  

        var $TotalPage;  

        var $NameFirst;  

        var $ShortName;  

        var $FixedValues;  

        var $TempSource;  

        var $IsError;  

        var $SplitTitles;  

        var $PreNext;  

        var $addTableRow;  

        var $ftp;  

        var $remoteDir;  

     

        //php5构造函数  

        function __construct($aid)  

        {  

            global $dsql,$ftp;  

            $this->IsError = false;  

            $this->ArcID = $aid;  

            $this->PreNext = array();  

     

            $this->dsql = $dsql;  

            $query = "Select channel,typeid from `dede58_arctiny` where id='$aid' ";  

            $arr = $this->dsql->GetOne($query);  

            if(!is_array($arr))  

            {  

                $this->IsError = true;  

            }  

            else  

            {  

                if($arr['channel']==0) { $arr['channel']=1; }  

                $this->ChannelUnit = new ChannelUnit($arr['channel'],$aid);  

                $this->TypeLink = new TypeLink($arr['typeid']);  

                if($this->ChannelUnit->ChannelInfos['issystem']!=-1)  

                {  

                    $query = "Select arc.*,tp.reid,tp.typedir,ch.addtable  

                    from `dede58_archives` arc  

                            left join dede58_arctype tp on tp.id=arc.typeid  

                            left join dede58_channeltype as ch on arc.channel = ch.id  

                            where arc.id='$aid' ";  

                    $this->Fields = $this->dsql->GetOne($query);  

                }  

                else  

                {  

                    $this->Fields['title'] = '';  

                    $this->Fields['money'] = $this->Fields['arcrank'] = 0;  

                    $this->Fields['senddate'] = $this->Fields['pubdate'] = $this->Fields['mid'] = $this->Fields['adminid'] = 0;  

                    $this->Fields['ismake'] = 1;  

                    $this->Fields['filename'] = '';  

                }  

     

                if($this->TypeLink->TypeInfos['corank'] > 0 && $this->Fields['arcrank']==0)  

                {  

                    $this->Fields['arcrank'] = $this->TypeLink->TypeInfos['corank'];  

                }  

     

                $this->Fields['tags'] = GetTags($aid);  

                $this->dtp = new DedeTagParse();  

                $this->dtp->SetRefObj($this);  

                $this->SplitPageField = $this->ChannelUnit->SplitPageField;  

                $this->SplitFields = '';  

                $this->TotalPage = 1;  

                $this->NameFirst = '';  

                $this->ShortName = 'html';  

                $this->FixedValues = '';  

                $this->TempSource = '';  

                $this->ftp = &$ftp;  

                $this->remoteDir = '';  

                if(empty($GLOBALS['pageno']))  

                {  

                    $this->NowPage = 1;  

                }  

                else  

                {  

                    $this->NowPage = $GLOBALS['pageno'];  

                }  

     

                //特殊的字段数据处理  

                $this->Fields['aid'] = $aid;  

                $this->Fields['id'] = $aid;  

                $this->Fields['position'] = $this->TypeLink->GetPositionLink(true);  

                $this->Fields['typeid'] = $arr['typeid'];  

     

                //设置一些全局参数的值  

                foreach($GLOBALS['PubFields'] as $k=>$v)  

                {  

                    $this->Fields[$k] = $v;  

                }  

     

                //为了减少重复查询,这里直接把附加表查询记录放在 $this->addTableRow 中,在 ParAddTable() 不再查询  

                if($this->ChannelUnit->ChannelInfos['addtable']!='')  

                {  

                    $query = "SELECT * FROM `{$this->ChannelUnit->ChannelInfos['addtable']}` WHERE `aid` = '$aid'";  

                    $this->addTableRow = $this->dsql->GetOne($query);  

                }  

     

                //issystem==-1 表示单表模型,单表模型不支持redirecturl这类参数,因此限定内容普通模型才进行下面查询  

                if($this->ChannelUnit->ChannelInfos['addtable']!='' && $this->ChannelUnit->ChannelInfos['issystem']!=-1)  

                {  

                    if(is_array($this->addTableRow))  

                    {  

                        $this->Fields['redirecturl'] = $this->addTableRow['redirecturl'];  

                        $this->Fields['templet'] = $this->addTableRow['templet'];  

                        $this->Fields['userip'] = $this->addTableRow['userip'];  

                    }  

                    $this->Fields['templet'] = (empty($this->Fields['templet']) ? '' : trim($this->Fields['templet']));  

                    $this->Fields['redirecturl'] = (empty($this->Fields['redirecturl']) ? '' : trim($this->Fields['redirecturl']));  

                    $this->Fields['userip'] = (empty($this->Fields['userip']) ? '' : trim($this->Fields['userip']));  

                }  

                else  

                {  

                    $this->Fields['templet'] = $this->Fields['redirecturl'] = '';  

                }  

            }//!error  

        }  

     

        //php4构造函数  

        function Archives($aid)  

        {  

            $this->__construct($aid);  

        }  

     

        //解析附加表的内容  

        function ParAddTable()  

        {  

            //读取附加表信息,并把附加表的资料经过编译处理后导入到$this->Fields中,以方便在模板中用 {dede:field name='fieldname' /} 标记统一调用  

            if($this->ChannelUnit->ChannelInfos['addtable']!='')  

            {  

                $row = $this->addTableRow;  

                if($this->ChannelUnit->ChannelInfos['issystem']==-1)  

                {  

                    $this->Fields['title'] = $row['title'];  

                    $this->Fields['senddate'] = $this->Fields['pubdate'] = $row['senddate'];  

                    $this->Fields['mid'] = $this->Fields['adminid'] = $row['mid'];  

                    $this->Fields['ismake'] = 1;  

                    $this->Fields['arcrank'] = 0;  

                    $this->Fields['money']=0;  

                    $this->Fields['filename'] = '';  

                }  

     

                if(is_array($row))  

                {  

                    foreach($row as $k=>$v) $row[strtolower($k)] = $v;  

                }  

                if(is_array($this->ChannelUnit->ChannelFields) && !empty($this->ChannelUnit->ChannelFields))  

                {  

                    foreach($this->ChannelUnit->ChannelFields as $k=>$arr)  

                    {  

                        if(isset($row[$k]))  

                        {  

                            if(!empty($arr['rename']))  

                            {  

                                $nk = $arr['rename'];  

                            }  

                            else  

                            {  

                                $nk = $k;  

                            }  

                            $cobj = $this->GetCurTag($k);  

                            if(is_object($cobj))  

                            {  

                                    foreach($this->dtp->CTags as $ctag)  

                                    {  

                                            if($ctag->GetTagName()=='field' && $ctag->GetAtt('name')==$k)  

                                            {  

                                                //带标识的专题节点  

                                                if($ctag->GetAtt('noteid') != '') {  

                                                    $this->Fields[$k.'_'.$ctag->GetAtt('noteid')] = $this->ChannelUnit->MakeField($k, $row[$k], $ctag);  

                                                }  

                                                //其它字段  

                                                else {  

                                                    $this->Fields[$nk] = $this->ChannelUnit->MakeField($k, $row[$k], $ctag);  

                                                }  

                                            }  

                                    }  

                            }  

                            else  

                            {  

                                $this->Fields[$nk] = $row[$k];  

                            }  

                            if($arr['type']=='htmltext' && $GLOBALS['cfg_keyword_replace']=='Y' && !empty($this->Fields['keywords']))  

                            {  

                                $this->Fields[$nk] = $this->ReplaceKeyword($this->Fields['keywords'],$this->Fields[$nk]);  

                            }  

                        }  

                    }//End foreach  

                }  

                //设置全局环境变量  

                $this->Fields['typename'] = $this->TypeLink->TypeInfos['typename'];  

                @SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['id'],$this->Fields['title'],'archives');  

            }  

            //完成附加表信息读取  

            unset($row);  

     

            //处理要分页显示的字段  

            $this->SplitTitles = Array();  

            if($this->SplitPageField!='' && $GLOBALS['cfg_arcsptitle']='Y'  

            && isset($this->Fields[$this->SplitPageField]))  

            {  

                $this->SplitFields = explode

    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!