首先找到include/taglib/channellibphp文件,找到59行,代码如下:
--------------------------------------------
else if($type=='self')
{
if($reid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `#@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}
在此段代码之后,添加:
else if($type=='parent')
if($reid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `#@__arctype` WHERE id='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}
---------------------------------------
接下来继续往后找到代码:
//处理同级栏目中,当前栏目的样式
if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )
修改为:
//处理同级栏目中,当前栏目的样式
if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') || ($row['id']==$reid && $type=='parent' )) && $currentstyle!='' )
===================================
前台调用方法:
{dede:channel type='parent'}{/dede:channel}
有两个问题
1,下面的栏目是不是本栏目的子栏目
2下面的栏目是不是本栏目的同级栏目(顶级栏目)
第一种解决办法:{dede:channel type ='son' row=' 想要显示的数量用数字 ' }
第二种:这个种就只能用指定栏目ID来完成, *** 作起来比较麻烦,就不用lefthtm当做模板,直接写到当前应用的模板里面,而且每个栏目模板不一样,就可以完成,下面是调用标签
{dede:type typeid='栏目id'} 中间省略 {/dede:type}
如果 还有什么不懂的可以 MMMMMMMM 我。
这个有这么麻烦吗?我觉得是不是想太多了,在栏目下面调用如果不指定typeid的话,默认是当前栏目的ID,如果要让所有栏目都显示那个幻灯,价格加个typeid='all'试试,我是感觉应该可以的
{dede:arclist row='10' typeid='顶级栏目ID' orderby ='pubdate' }
[field:title/]
{/dede:arclist}
你要每个栏目调用一条的话那就得分开写,要是所有文章中调用最新的话那就用这个就行了。
{dede:arclist row=14 titlelen=32 noflag='h'}
<a href="[field:arcurl/]">[field:title/]</a>
{/dede:arclist}
这个就是调用最新文章。如果是每个栏目都调用一条的话那就要在标签里面加上typeid=1这样的代码,例如:
{dede:arclist typeid=10 row=1 titlelen=32 noflag='h'}
<a href="[field:arcurl/]">[field:title/]</a>
{/dede:arclist}
这就是调用栏目ID为10的最新的一条
以上就是关于织梦 dede 5.7版本 如何调用上级栏目的名称 和 链接。全部的内容,包括:织梦 dede 5.7版本 如何调用上级栏目的名称 和 链接。、织梦内页左侧栏目怎么根据页面不同判断栏目、织梦如何调用当前栏目的上级栏目内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)