GVKun编程网logo

织梦dedecms列表页分页URL链接路径地址绝对化(织梦内容页调用)

16

在本文中,我们将带你了解织梦dedecms列表页分页URL链接路径地址绝对化在这篇文章中,我们将为您详细介绍织梦dedecms列表页分页URL链接路径地址绝对化的方方面面,并解答织梦内容页调用常见的疑

在本文中,我们将带你了解织梦dedecms列表页分页URL链接路径地址绝对化在这篇文章中,我们将为您详细介绍织梦dedecms列表页分页URL链接路径地址绝对化的方方面面,并解答织梦内容页调用常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的dedecms5.7栏目列表页分页URL优化、dedecms5.7织梦模板栏目列表页分页URL优化教程、dedecms列表页分页效果变形的问题解决、Dedecms列表页分页错位问题解决方案

本文目录一览:

织梦dedecms列表页分页URL链接路径地址绝对化(织梦内容页调用)

织梦dedecms列表页分页URL链接路径地址绝对化(织梦内容页调用)

 
织梦dedecms列表页分页URL链接路径地址**化,就算在后台-系统-核心设置里启用**网址,程序的栏目分页URL链接默认还是相对路径,如图演示
 
织梦dedecms列表页分页URL链接路径地址**化
 
做SEO优化的同学肯定想要全站**路径,那么我们来改一下,加3行代码实现分页URL链接成**路径
 
dedecms织梦模版列表页生成静态分页URL链接改成**路径实现教程如下
 
打开 includerc.listview.class.php 找到
 
$tnamerule = preg_replace("/^(.*)//", '', $tnamerule);
 
 
在它的下面加入
 
global $cfg_basehost;
 
$cfg_basehost = preg_replace('#/$#','',$cfg_basehost);
 
$tnamerule = $cfg_basehost.MfTypedir($this->Fields['typedir']).'/'.$tnamerule;
 
 
保存,重新生成栏目,效果如下图
织梦dedecms列表页分页URL链接路径地址**化
本文章网址:http://www.ppssdd.com/code/1354.html。转载请保留出处,谢谢合作!

dedecms5.7栏目列表页分页URL优化

dedecms5.7栏目列表页分页URL优化

Dedecms程序的栏目列表分页链接网址,如果我们仔细观察会发现,栏目的首页链接会存在两个内容相同的2个不同URL地址。从SEO方面来说,一个网页有2个网址是不太好的。所以,我们最好把两个URL统一成index.html

方法如下:

1,找到 \include\arc.listview.class.PHP 这个文件,将

$typedir= ereg_replace('{cmspath}',$GLOBALS['cfg_cmspath'],$this->Fields['typedir']);

这段代码添加到   //获得上一页和主页的链接  前面;

2,找到下面几行代码

if($this->PageNo != 1)
{
$prepage.="上一页首页
				

替换为下面的代码

if($this->PageNo != 1)
{
if($prepagenum==1)
{
$prepage.="上一页上一页首页
				

3、找到

$listdd.="
				

替换为

if($j==1)
{
$listdd.="\r\n";" }="" else="" {="" $listdd.="
  • 完成以上三个步骤就可以实现织梦栏目首页翻页URL链接地址优化统一了。

    dedecms5.7织梦模板栏目列表页分页URL优化教程

    dedecms5.7织梦模板栏目列表页分页URL优化教程

    Dedecms程序的栏目列表分页链接网址,如果我们仔细观察会发现,栏目的首页链接会存在两个内容相同的2个不同URL地址。从SEO方面来说,一个网页有2个网址是不太好的。所以,我们最好把两个URL统一成index.html
    方法如下:
    1,找到 includearc.listview.class.PHP 这个文件,将
    $typedir= ereg_replace('{cmspath}',$GLOBALS['cfg_cmspath'],$this->Fields['typedir']);
    这段代码添加到   //获得上一页和主页的链接  前面;
    2,找到下面几行代码
    if($this->PageNo != 1)
    {
    $prepage.="上一页 $indexpage=”首页 }
    替换为下面的代码
    查看源码打印代码帮助
    if($this->PageNo != 1)
    {
    if($prepagenum==1)
    {
    $prepage.="上一页 }
    else
    {
    $prepage.="上一页 }
    $indexpage="首页 }
    3、找到
    $listdd.=" 替换为
    if($j==1)
    {
    $listdd.=" }
    else
    {
    $listdd.=" }
    完成以上三个步骤就可以实现织梦栏目首页翻页URL链接地址优化统一了。

    dedecms列表页分页效果变形的问题解决

    dedecms列表页分页效果变形的问题解决

    我们在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 `zuimoban_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 `zuimoban_archives` arc  

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

                            left join zuimoban_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,$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

    上一篇:dedecms站内链接(描文本)的增强与优化

    下一篇:dede列表页输入数字,跳转指定页面

    Dedecms列表页分页错位问题解决方案

    Dedecms列表页分页错位问题解决方案

    很多织梦dedecms网站遇到一个问题,在仿站过程中,目标网站列表页分页是对a标记进行css样式定义的,而织梦里面的列表页里面有li标记,就会导致错位,今天编者写了一个函数,就可以解决这个问题
     
    if(!function_exists('getNewList'))
    {
    function getNewList($str)
    {
    $str = preg_replace("#<li(.*?)>|</li>#","",$str);
    return $str;
    }
    }
     
    将这个函数写入到include/extend.func.PHP,然后列表页调用的时候用
     
     
    {dede:Pagelist listitem="index,end,pre,next,pageno" listsize="4" function="getNewList(@me)"/}

    上一篇:dedecms v5.7频道封面首页的调用【经验】

    下一篇:织梦dedecms二次开发之审核时间同步更新

    关于织梦dedecms列表页分页URL链接路径地址绝对化织梦内容页调用的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于dedecms5.7栏目列表页分页URL优化、dedecms5.7织梦模板栏目列表页分页URL优化教程、dedecms列表页分页效果变形的问题解决、Dedecms列表页分页错位问题解决方案等相关内容,可以在本站寻找。

    本文标签: