dedecms 子栏目标题调用
时间 : 2023-12-26 10:22:02 声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
最佳答案
在dedecms中调用子栏目标题可以通过一些dedecms内置的标签来实现。
假设我们要调用子栏目标题的位置是在主栏目模板中,可以在栏目模板中使用如下代码来调用子栏目标题:
{dede:channel listtypeid='' row='10' currentstyle="<li class='current'><a href='@listlink@'>@typename@</a></li>"}
{dede:arclist archives=0 row='10' typeid='@typeid@'}
<li>
<a href='@arcurl@'>@title@</a>
</li>
{/dede:arclist}
{/dede:channel}
在模板中,我们使用了`dede:channel`标签,它负责获取栏目的相关信息。其中,`listtypeid`参数是用来指定要获取的栏目ID,如果不指定,默认获取当前栏目的子栏目信息。`currentstyle`参数是用来指定当前栏目选中时的样式。
在`dede:arclist`标签中,我们使用了`archives=0`来过滤只显示未关闭的文章,`typeid='@typeid@'`参数用来指定当前子栏目的栏目ID。
通过以上的代码,我们可以在主栏目模板中获取到子栏目的标题,并在页面中进行展示。
注意:以上代码仅提供了一种方式来调用子栏目标题,具体的调用方式还需要根据dedecms的版本和模板的结构来确定。
其他答案
在dedecms中,你可以使用以下代码来调用子栏目的标题:
```php
<?php
$aid = $aid ? $aid : $GLOBALS['aid'];
if(empty($aid)) return '没有相关内容';
$arcChannel = '';
$aid = intval($aid);
$arcRow = $dsql->GetOne("SELECT * FROM `#@__archives` WHERE `id` = $aid");
if(!is_array($arcRow)) return '不存在相关内容';
$channel = $arcRow['channel'];
$arcrank = $arcRow['arcrank'];
if ($channel != 1) {
if(!empty($arcRow['tchannel'])) $channel = $arcRow['tchannel'];
else return '无效栏目频道';
} else {
$channel = FALSE;
}
$query = "SELECT * FROM `#@__arctype` WHERE ";
if ($channel == FALSE) {
$query .= ' id = '.$arcRow['typeid'];
} else {
$ispart = '';
$nav_li = GetParentKey($arcRow['typeid']);
if(in_array($arcRow['typeid'], $nav_li)) {
}
else{
$ispart = ' AND `ispart` != 1';
}
$query .= " CONCAT(`id`,`reid`) REGEXP '^".$arcRow['typeid'].",|,".$arcRow['typeid']."$|^".$arcRow['typeid']."$' AND `channeltype` = '-1'".$ispart;
}
$typeinfo = $dsql->GetOne($query);
$dirTypeInfo = $typeinfo['typedir'].'/';
$typeInfosdir = MfTypedir($typeinfo['topid'],$typeinfo['typedir'],'',true).$typeinfo['dirname'].'/';
?>
<?php
$channelquery = "SELECT arc.*, arc.id as aid, arc.typeid as typeid, ch.typename as type,t.price as price
FROM `#@__archives` arc
LEFT JOIN `#@__arctype` ch on ch.id=arc.typeid
LEFT JOIN `#@__xgmk_price` t on t.aid=arc.id
WHERE arc.`channeltype` != 1 AND arc.`arcrank`= 0 AND arc.`typeid` IN (".GetSonIds($typeinfo['id']).")
ORDER BY arc.`senddate` DESC LIMIT 0,5";
$dsql->SetQuery($channelquery);
$dsql->Execute('referer');
$i = 1;
while($row = $dsql->GetArray('referer'))
{
?>
<li><a href="<?php echo $row['type']?>"><?php echo $row['typename']?></a></li>
<?php
$i++;
}
?>
请注意,在使用上述代码之前,你需要确保已经在dedecms中设置了子栏目。
下一篇
帝国cms 友情链接调用
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章







