GVKun编程网logo

dedecms织梦生成栏目列表后前台访问空白(织梦栏目内容空白)

25

如果您对dedecms织梦生成栏目列表后前台访问空白和织梦栏目内容空白感兴趣,那么这篇文章一定是您不可错过的。我们将详细讲解dedecms织梦生成栏目列表后前台访问空白的各种细节,并对织梦栏目内容空白

如果您对dedecms织梦生成栏目列表后前台访问空白织梦栏目内容空白感兴趣,那么这篇文章一定是您不可错过的。我们将详细讲解dedecms织梦生成栏目列表后前台访问空白的各种细节,并对织梦栏目内容空白进行深入的分析,此外还有关于DEDECMS v5.5实现嵌套获取栏目及其子栏目列表、dedecms5.7织梦模板栏目列表页分页URL优化教程、DEDECMS点击主栏目默认显示*个子栏目列表的办法、dedecms生成栏目列表页排序多样化pubdate,click等排序的实用技巧。

本文目录一览:

dedecms织梦生成栏目列表后前台访问空白(织梦栏目内容空白)

dedecms织梦生成栏目列表后前台访问空白(织梦栏目内容空白)

 

打开 \include\arc.listview.class.php 找到
$this->CountRecord();  

改成

if(empty($this->TotalResult)) $this->CountRecord();  

本文章网址:http://www.ppssdd.com/code/10766.html。转载请保留出处,谢谢合作!

DEDECMS v5.5实现嵌套获取栏目及其子栏目列表

DEDECMS v5.5实现嵌套获取栏目及其子栏目列表

关于Dedecms实现嵌套获取栏目及其子栏目列表的问题,在论坛找到了以前版本的修改方法,用在5.5版本上发现不能用,于是修改了一下,现在分享给大家。请看实例代码:

  修改文件:\include\taglib目录下的channel.lib.PHP,请将以下代码全部复制替换上述文件。

 

以下为引用的内容:
PHP
function lib_channel(&$ctag,&$refObj)
{
    global $_sys_globals,$envs,$dsql;
    $attlist = "typeid|0,reid|0,row|100,col|1,type|son,currentstyle|";
    FillAttsDefault($ctag->CAttribute->Items,$attlist);
    extract($ctag->CAttribute->Items,EXTR_SKIP);
    $innertext = $ctag->GetInnerText();
        $cacheid = trim($cacheid);
    if($cacheid !='') {
        $likeType = GetCacheBlock($cacheid);
        if($likeType != '') return $likeType;
    }

    $reid = 0;
    $topid = 0;
    if(empty($typeid) && $envs['typeid']!=0)
    {
        $typeid = $envs['typeid'];
        $reid = $envs['reid'];
    }else{
        $reid=0;
    }

    if($type==''||$type=='sun') $type="son";
    if($innertext=='') $innertext = GetSystemplets("channel_list.htm");

    if($reid==0 && $typeid>0)
    {
        $dbrow = $dsql->Getone("Select reid From dede_arctype where id='$typeid' ");
        if(is_array($dbrow)) $reid = $dbrow['reid'];
    }

    $likeType = '';
    if($type=='top')
    {
        $sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,description
          From dede_arctype where reid=0 And ishidden<>1 order by sortrank asc limit 0,$row";
    }
    else if($type=="son")
    {
        //if($_sys_globals['typeid']>0) $typeid = $_sys_globals['typeid'];
        if($typeid==0) {
            return '';
        }
        $sql = "Select id,description
          From dede_arctype where reid='$typeid' And ishidden<>1 order by sortrank asc limit 0,$row";
    }
    else if($type=="self")
    {
        if($reid==0) {
            return '';
        }
        $sql = "Select id,description
            From `dede_arctype` where reid='$reid' And ishidden<>1 order by sortrank asc limit 0,$row";
    }
    //And id<>'$typeid'
    $needRel = false;
    $dtp2 = new DedeTagParse();
    $dtp2->SetNameSpace("field","[","]");
    $dtp2->LoadSource($innertext);
    $dsql2 = clone $dsql;
    $dsql->SetQuery($sql);
    $dsql->Execute();

    $line = $row;
        //检查是否有子栏目,并返回rel提示(用于二级菜单)本教程由烈火网提供,更多http://www.jb51.cc/
    if(ereg(':rel',$innertext)) $needRel = true;
    
    if(empty($sql)) return '';
    $dsql->SetQuery($sql);
    $dsql->Execute();
    
    $totalRow = $dsql->GetTotalRow();
    $GLOBALS['autoindex'] = 0;
    for($i=0;$i < $line;$i++)
    {
        if($col>1) $likeType .= "sql->GetArray())
            {
                            $row['sonids'] = $row['rel'] = '';
                if($needRel)
                {
                    $row['sonids'] = GetSonIds($row['id'],false);
                    if($row['sonids']=='') $row['rel'] = '';
                    else $row['rel'] = " rel='dropmenu{$row['id']}'";
                }
                //处理同级栏目中,当前栏目的样式
                if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )
                {
                    if($currentstyle!='')
                    {
                    $linkOkstr = $currentstyle;
                    $row['typelink'] = GetoneTypeUrlA($row);
                    $linkOkstr = str_replace("~rel~",$row['rel'],$linkOkstr);
                    $linkOkstr = str_replace("~id~",$row['id'],$linkOkstr);
                    $linkOkstr = str_replace("~typelink~",$row['typelink'],$linkOkstr);
                    $linkOkstr = str_replace("~typename~",$row['typename'],$linkOkstr);
                    $likeType .= $linkOkstr;
                    }
                }else
                {
                    $row['typelink'] = $row['typeurl'] = GetoneTypeUrlA($row);
                    if(is_array($dtp2->CTags))
                    {
                        foreach($dtp2->CTags as $tagid=>$ctag){
                            if(isset($row[$ctag->GetName()]))
                            {
                                $dtp2->Assign($tagid,$row[$ctag->GetName()]);
                            }
                            elseif (preg_match('/^sonchannel[0-9]*$/',$ctag->GetName()))
                            {
                                $dtp2->Assign($tagid,lib_channel_son($ctag,$dsql2));
                            }
                        }
                    }
                    $likeType .= $dtp2->GetResult();
                }
            }
            if($col>1) $likeType .= "sql2);
    $dsql->FreeResult();
    return $likeType;
}
function lib_channel_son($ctag,$typeid = 0,$dsql2)
{
    $attlist = "row|100,EXTR_SKIP);
    $innertext = $ctag->GetInnerText();
    $dsql3 = clone $dsql2;
    $likeType = '';

    //if($_sys_globals['typeid']>0) $typeid = $_sys_globals['typeid'];
    if($typeid==0) {
        return '';
    }
    $sql = "Select id,$row";
    //And id<>'$typeid'
    $dtp2 = new DedeTagParse();
    $dtp2->SetNameSpace("field","]");
    $dtp2->LoadSource($innertext);
    $dsql2->SetQuery($sql);
    $dsql2->Execute();
    $line = $row;

    for($i=0;$i < $line;$i++)
    {
        if($col>1) $likeType .= "sql2->GetArray())
            {
                $row['typelink'] = $row['typeurl'] = GetoneTypeUrlA($row);
                if(is_array($dtp2->CTags))
                {
                    foreach($dtp2->CTags as $tagid=>$ctag){
                        if(isset($row[$ctag->GetName()]))
                        {
                            $dtp2->Assign($tagid,$row[$ctag->GetName()]);
                        }
                        elseif (preg_match('/^sonchannel[0-9]*$/',$ctag->GetName()))
                        {
                            $dtp2->Assign($tagid,$dsql3));
                        }
                    }
                }
                $likeType .= $dtp2->GetResult();
            }
            if($col>1) $likeType .= "sql3);
    $dsql2->FreeResult();
    return $likeType;
}
?>

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 点击主栏目默认显示*个子栏目列表的办法。

分享给大家供大家参考。

具体分析如下:
 

  今天企业有个需求是,点击导航上的父栏目进去默认显示*个子栏目的列表,以下是具体实现办法,可能有点笨,呵呵.

  *步:新建模版,比如 oneUrl.htm,内容如下,注,以下内容写到 javascript 标签里.

  代码如下:

  {dede:channel type='son' row='1'}

  window.location.href='[field:typelink /]';

  {/dede:channel}

  第二步:到后台 “核心->网站栏目管理-> 要修改的主栏目 ”,然后点击修改,主要修改以下几项.

  1,常规选项-栏目属性设置为,频道封面,栏目本身不允许发布文档.

  2,高级选项-封面模版设置为,*步新建的模版即可.

  实现原理就是,点击父栏目会 查询*个子栏目的链接,然后做跳转操作.

本文章网址:http://www.ppssdd.com/code/13858.html。转载请保留出处,谢谢合作!

dedecms生成栏目列表页排序多样化pubdate,click等排序

dedecms生成栏目列表页排序多样化pubdate,click等排序

Dedecms生成栏目列表页排序多样化pubdate,click等排序格式@H_301_2@如下图显示:@H_301_2@

修改教程如下:

第1步:@H_301_2@@H_301_2@在   dede/inc_menu.PHP  中找到“更新主页HTML“ 在这一部分中增加若干行必要的代码:@H_301_2@    例如 @H_301_2@第2步:@H_301_2@dede目录中找到 makehtml_list.PHP、makehtml_list_action.PHP,分别复制一份重命名为makehtml_list_click.PHP、makehtml_list_click_action.PHP@H_301_2@makehtml_list_click.PHP 中将“makehtml_list.htm” 改为“makehtml_list_click.htm”;@H_301_2@makehtml_list_click_action.PHP  中 将“arc.listview.class.PHP” 替换为 “arc.list.click.view.class.PHP”;接着在大概文件末尾,找到 “makehtml_list_action.PHP” 改为“makehtml_list_click_action.PHP”;@H_301_2@第3步:@H_301_2@dede/templets目录中找到 makehtml_list.htm,复制一份重命名为 makehtml_list_click.htm;然后打开新建的文件找到action="makehtml_list_action.PHP",替换为 action="makehtml_list_click_action.PHP"@H_301_2@第4步:@H_301_2@这一步需要改的比较多点了@H_301_2@include目录中找到 arc.listview.class.PHP 复制一份重命名为 arc.list.click.view.class.PHP@H_301_2@接着打开您新建的这个文件arc.list.click.view.class.PHP:@H_301_2@①:找到@H_301_2@   $tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$this->TypeLink->TypeInfos['templist']; // very68.com@H_301_2@   $tempfile = str_replace("{tid}",$this->TypeID,$tempfile);@H_301_2@   $tempfile = str_replace("{cid}",$this->ChannelUnit->ChannelInfos['nid'],arial; font-size: 16px; line-height: 24px;">   if(!file_exists($tempfile))@H_301_2@   {@H_301_2@    $tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/list_default.htm";@H_301_2@   }@H_301_2@   if(!file_exists($tempfile)||!is_file($tempfile))@H_301_2@    echo "模板文件不存在,无法解析文档!";@H_301_2@    exit();@H_301_2@全部替换为   @H_301_2@$tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/list_click_article.htm"; // list_click_article.htm是你自己制作的按click排序的模板,官方默认的模板是按pudate排序,这个看您自己的喜好了,O(∩_∩)O~@H_301_2@②、找到@H_301_2@     $onlyrule = $this->GetMakeFileRule($this->Fields['id'],"list",$this->Fields['typedir'],'',$this->Fields['namerule2']);@H_301_2@     $onlyrule = str_replace("{page}","1",$onlyrule);@H_301_2@     $list_1 = $this->GetTruePath().$onlyrule;@H_301_2@     $murl = MfTypedir($this->Fields['typedir']).'/'.$this->Fields['defaultname'];@H_301_2@全部删掉或者注释掉即可。@H_301_2@③、找到@H_301_2@     $namerule2 = str_replace('{tid}',$typeid,$namerule2);@H_301_2@替换为@H_301_2@     $namerule2 = str_replace('{tid}',$typeid.'_click',$namerule2); // very68.com@H_301_2@      其中_click,按自己喜好命名。@H_301_2@本教程至此全部结束,感谢您的收看

关于dedecms织梦生成栏目列表后前台访问空白织梦栏目内容空白的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于DEDECMS v5.5实现嵌套获取栏目及其子栏目列表、dedecms5.7织梦模板栏目列表页分页URL优化教程、DEDECMS点击主栏目默认显示*个子栏目列表的办法、dedecms生成栏目列表页排序多样化pubdate,click等排序等相关内容,可以在本站寻找。

本文标签: