本文的目的是介绍DEDECMS点击主栏目默认显示*个子栏目列表的办法的详细情况,特别关注dedecms标签怎么用的相关信息。我们将通过专业的研究、有关数据的分析等多种方式,为您呈现一个全面的了解DED
本文的目的是介绍DEDECMS点击主栏目默认显示*个子栏目列表的办法的详细情况,特别关注dedecms标签怎么用的相关信息。我们将通过专业的研究、有关数据的分析等多种方式,为您呈现一个全面的了解DEDECMS点击主栏目默认显示*个子栏目列表的办法的机会,同时也不会遗漏关于DEDECMS v5.5实现嵌套获取栏目及其子栏目列表、DEDECMS 点击主栏目默认显示第一个子栏目列表的方法、dedecms 首页 栏目循环调用子栏目内容(文章)如何写、dedecms 首页 栏目循环调用子栏目内容(文章)怎么写的知识。
本文目录一览:- DEDECMS点击主栏目默认显示*个子栏目列表的办法(dedecms标签怎么用)
- DEDECMS v5.5实现嵌套获取栏目及其子栏目列表
- DEDECMS 点击主栏目默认显示第一个子栏目列表的方法
- dedecms 首页 栏目循环调用子栏目内容(文章)如何写
- dedecms 首页 栏目循环调用子栏目内容(文章)怎么写
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 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,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,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,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,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提示(用于二级菜单)本教程由烈火网提供,更多 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 .= "<dl>\r\n"; for($j=0;$j<$col;$j++) { if($col>1) $likeType .= "<dd>\r\n"; if($row=$dsql->GetArray()) { $row['sonids'] = $row['rel'] = ''; if($needRel) { $row['sonids'] = GetSonIds($row['id'], 0, 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,$row['id'],$dsql2)); } } } $likeType .= $dtp2->GetResult(); } } if($col>1) $likeType .= "</dd>\r\n"; $GLOBALS['autoindex']++; }//Loop Col if($col>1) { $i += $col - 1; $likeType .= " </dl>\r\n"; } }//Loop for $i reset($dsql2); $dsql->FreeResult(); return $likeType; } function lib_channel_son($ctag,$typeid = 0,$dsql2) { $attlist = "row|100,col|1,currentstyle|"; FillAttsDefault($ctag->CAttribute->Items,$attlist); extract($ctag->CAttribute->Items, 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,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,description From dede_arctype where reid='$typeid' And ishidden<>1 order by sortrank asc limit 0,$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 .= "<dl>\r\n"; for($j=0;$j<$col;$j++) { if($col>1) $likeType .= "<dd>\r\n"; if($row=$dsql2->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,lib_channel_son($ctag,$row['id'],$dsql3)); } } } $likeType .= $dtp2->GetResult(); } if($col>1) $likeType .= "</dd>\r\n"; }//Loop Col if($col>1) { $i += $col - 1; $likeType .= " </dl>\r\n"; } }//Loop for $i reset($dsql3); $dsql2->FreeResult(); return $likeType; } ?>本文章网址:http://www.ppssdd.com/code/6169.html。转载请保留出处,谢谢合作!
DEDECMS 点击主栏目默认显示第一个子栏目列表的方法
今天公司有个需求是,点击导航上的父栏目进去默认显示第一个子栏目的列表,以下是具体实现方法,可能有点笨,呵呵.
第一步:新建模版,比如 oneUrl.htm, 内容如下,注,以下内容写到 javascript 标签里.
代码如下:
{dede:channel type=''son'' row=''1''}
window.location.href=''[field:typelink /]'';
{/dede:channel}
第二步:到后台 “核心 -> 网站栏目管理 -> 要修改的主栏目 ”, 然后点击修改,主要修改以下几项.
1, 常规选项 - 栏目属性设置为,频道封面,栏目本身不允许发布文档.
2, 高级选项 - 封面模版设置为,第一步新建的模版即可.
实现原理就是,点击父栏目会 查询第一个子栏目的链接,然后做跳转操作.
本文同步分享在 博客 “lxw1844912514”(CSDN)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与 “OSC 源创计划”,欢迎正在阅读的你也加入,一起分享。
dedecms 首页 栏目循环调用子栏目内容(文章)如何写
dedecms 标签
假如我的分类是大类1
小类11
小类12
大类2
小类21
小类22
……………………
我现在想实现下面
大类1
小类11 小类12
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
大类2
小类21 小类22
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
……………………
这样的循环调用不知道怎么实现
回复讨论(解决方案)
我也是刚开始学习织梦,不过我也不懂
- -!!没人啊
第一个大类
{dede:type typeid=1}[field:typename /]{/dede:type}
{dede:arclist row=''6'' titlelen=''20'' imgwidth=''80'' imgheight=''107'' addfields=''body'' typeid=''小类11'' channelid=''1''}
field:title/]
{/dede:arclist}
{dede:arclist row=''6'' titlelen=''20'' imgwidth=''80'' imgheight=''107'' addfields=''body'' typeid=''小类12'' channelid=''1''}
field:title/]
{/dede:arclist}
这么列下去。
第一个大类
{dede:type typeid=1}[field:typename /]{/dede:type}
{dede:arclist row=''6'' titlelen=''20'' imgwidth=''80'' imgheight=''107'' addfields=''body'' typeid=''小类11'' channelid=''1''}
field:title/]
{/dede:arclist}
{dede:arclist row=''6'' titlelen=''20'' imgwidth=''80'' imgheight=''107'' addfields=''body'' typeid=''小类12'' channelid=''1''}
field:title/]
{/dede:arclist}
这么列下去。
全部列出来啊1!!- -!
好像只能这样,dede的标签嵌套好像只能是最简单的那种。。
dedecms 首页 栏目循环调用子栏目内容(文章)怎么写
dedecms 首页 栏目循环调用子栏目内容(文章)如何写
假如我的分类是
大类1
小类11
小类12
大类2
小类21
小类22
……………………
我现在想实现下面
大类1
小类11 小类12
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
大类2
小类21 小类22
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
文章标题 文章标题
……………………
这样的循环调用不知道怎么实现
------解决方案--------------------
第一个大类
{dede:type typeid=1}[field:typename /]{/dede:type}
{dede:arclist row=''6'' titlelen=''20'' imgwidth=''80'' imgheight=''107'' addfields=''body'' typeid=''小类11'' channelid=''1''}
field:title/]
{/dede:arclist}
{dede:arclist row=''6'' titlelen=''20'' imgwidth=''80'' imgheight=''107'' addfields=''body'' typeid=''小类12'' channelid=''1''}
field:title/]
{/dede:arclist}
这么列下去。
------解决方案--------------------
好像只能这样,dede的标签嵌套好像只能是最简单的那种。。
今天关于DEDECMS点击主栏目默认显示*个子栏目列表的办法和dedecms标签怎么用的分享就到这里,希望大家有所收获,若想了解更多关于DEDECMS v5.5实现嵌套获取栏目及其子栏目列表、DEDECMS 点击主栏目默认显示第一个子栏目列表的方法、dedecms 首页 栏目循环调用子栏目内容(文章)如何写、dedecms 首页 栏目循环调用子栏目内容(文章)怎么写等相关知识,可以在本站进行查询。
本文标签: