dedecms如何实现仅调用当前栏目内的文章,而不调用当前栏目子目录内的文章

dedecms如何实现仅调用当前栏目内的文章,而不调用当前栏目子目录内的文章,第1张

{dede:field name='typeid' runphp='yes'}

global $dsql;

/获取当前栏目id/

$typeid = @me;

$query = "SELECT reid FROM dede_arctype where id = $typeid";

$rs = $dsql->GetOne($query);

$reid = $rs['reid'];//获取到栏目的上级栏目

/获取上级栏目id/

$query2 = "SELECT FROM dede_arctype where id = $reid";

$typerow = $dsql->GetOne($query2);

/输出上级栏目信息/

$typename = $typerow['typename'];

$link = GetTypeUrl($typerow['typeid'],MfTypedir($typerow['typedir']),$typerow['isdefault'],$typerow['defaultname'],$typerow['ispart'],$typerow['namerule2'],$typerow['moresite'],$typerow['siteurl'],$typerow['sitepath']);

@me = "<a href='/{$link}'>$typename</a>";

{/dede:field}

{dede:channel type='son' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}

 <li><a href='[field:typelink/]'>[field:typename/]</a> </li>

{/dede:channel}

参数说明:

typeid = '0' 栏目ID

reid = '0' 上级栏目ID

row = '100' 调用栏目数

type = 'son' son表示下级栏目,self表示同级栏目,top顶级栏目

currentstyle = '' 应用样式

比如我们在首页需要调用指定栏目ID为6的栏目下的文章,而该栏目下有一个ID为12的子栏目,通常我们在首页的调用代码如下:

<ul>

{dede:arclist typeid='8' row='10' col='1' orderby='hot'}

<li><a href='[field:arcurl/]'>[field:shorttitle/]</a></li>

{/dede:arclist}

</ul>

但是调用后,此栏目下的ID为12的子栏目里面的内容也会出现在列表里,如果不想要子栏目的内容出现在列表里很简单,这个在后台就有设置,具体设置如下:

登录织梦管理后台,在“系统基本参数”——“性能选项”——“上级列表是否包含子类内容:”这个选项选择“否”就行了。

当然这个是有前提的,这个只能说是调用列表页,如果你调用的栏目是封面页,那么肯定会取子栏目的数据,如果你调用的是列表页,那么肯定是可以的。

DedeCMS(织梦内容管理系统)是织梦团队开发的一套网站管理系统(CMS)。

这个系统把一个网站的内容(文字,,等等)与网站的组件分离开来,可以将各个页面连接到一起,可以控制页面的显示。通过这个系统,可以方便的管理,发布,维护网站的内容,而不再需要硬性的写HTML代码或手工建立每一个页面。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dedecms如何实现仅调用当前栏目内的文章,而不调用当前栏目子目录内的文章

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情