DedeCMS用channelartlist调用顶级栏目及列表
转载亚洲最美瑜伽教练母其弥雅
这个标签全局都可使用,可以减少多次使用 {dede:arclist typeid=‘栏目ID’titlelen='60' row='10'}。除了宏标记外,{dede:channelartlist}是唯一一个可以直接嵌套其它标记的标记,不过仅限于嵌套{dede:type}{/dede:type}和{dede:arclist}{/dede:arclist}两个标记。{dede:channelartlist}和{dede:arclist}嵌套使用能同时调用顶级栏目或该栏目的下级栏目的文章,再嵌套下下级栏目需要二次开发。
官方对该标签的案例讲解有错误,下面笔者纠正过来。
基本语法:
{dede:channelartlist row='10'} <dl> <dt><a href='{dede:field name='typeurl'/}'>{dede:field name='typename'/}</a></dt>/*调用频道名*/ <dd> {dede:arclist titlelen='60' row='10'} <li><a href="[field:arcurl /]">[field:title /]</a></li>/*调用文章标题*/ {/dede:arclist} </dd> </dl> {/dede:channelartlist}
如果只要调用其中几个频道的内容可以用{dede:channelartlist typeid='1频道ID,2频道ID,3频道ID'} 。不想调用某个频道那就设置该频道属性隐藏即可。
上面的写法只能在首页用,子页要改成
{dede:channelartlist row='10' typeid='top'} <dl> <dt><a href='{dede:field name='typeurl'/}'>{dede:field name='typename'/}</a></dt>/*调用频道名*/ <dd> {dede:arclist titlelen='60' row='10'} <li><a href="[field:arcurl /]">[field:title /]</a></li>/*调用文章标题*/ {/dede:arclist} </dd> </dl> {/dede:channelartlist}
channelartlist不能获取顶级栏目属性为外部链接的解决办法
channelartlist是不能获取顶级栏目为外部链接的,这不够灵活,打开include/taglib/channellist.lib.php,找到
$tpsql = " reid=0 AND ispart<>2 AND ishidden<>1 AND channeltype>0 ";
修改为
$tpsql = " reid=0 AND ishidden<>1 AND channeltype>0 ";
扩展阅读
- DedeCMS移动栏目导航channelartlist判断当前栏目错误
- DedeCMS更换内容模型后文章不显示无损迁移数据
- DedeCMS表单自定义字段地区三级联动下拉选择修改优化版
- DedeCMS显示当前访问用户地域PHP方法
- DedeCMS自定义表单导出当天、两天的部分Excel数据
- DedeCMS缩略图引用HTTPS站外图片显示错误
- DedeCMS自定义表单批量审核增加删除全选取消全选按钮
- DedeCMS上传图片相对路径改为绝对路径有效处理办法
- DedeCMS实现URL不变PC和移动端展示不同模板
- DedeCMS不能正常删除栏目及文件夹的解决方案
- DedeCMS网站搬家后有效解决列表无法调用子栏目内容
- DedeCMS栏目不调用排除指定栏目的文章
本文地址:https://www.vi586.com/web/200.html
版权声明:网摘,版权归原作者所有
赞
赞(7)