找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1220|回复: 0

[分享] dede调取3J栏目名及栏目下的内容列表的方法

[复制链接]
发表于 2018-3-9 08:18:35 | 显示全部楼层 |阅读模式 来自 中国–河南–新乡
点评:网站根据需要,把地区划成省-市-文章的层级结构,正如标题所言dede怎么调取3J栏目名及栏目下的内容列表,具体的实现如下,感兴趣的朋友可以参考下
   网站根据需要,把地区划成省-市-文章的层级结构,栏目首页需要显示的是

代码如下:

  1. {dede:channelarclist} <!--省显示-->
  2. <a href="">省级标题:{dede:field name='name'/}</a>
  3. {dede:channel type='son'}
  4. <a href="">市级标题:[field:name/]</a>
  5. {dede:arclist}
  6. 该市文章{field:title/}
  7. {/dede:arclist}
  8. {/dede:channel}
  9. {/dede:channelarclist}
复制代码


即把省级栏目按市分类,并显示每一个市的文章标题,但是{dede:channel}标签不能嵌套,因此{dede:arclist}标签会原样输出,解决的办法:

代码如下:

  1. $typeid = $row['id'];
  2. if((class_exists('PartView')))
  3. {
  4. $pv = new PartView($typeid);
  5. $text = $likeType;
  6. $text= str_replace(array('{field', '/}'), array('[field', '/]'), $text);
  7. $pv->SetTemplet($text,'string');
  8. $artlist = $pv->GetResult();
  9. $likeType = $artlist;
  10. }
复制代码


在/include/taglib/channel.lib.php 中找到if($col>1) $likeType .= "</dd>\r\n"; (v5.6 是125行 v5.7是156行)在这句话上面加上上面的代码

问题解决。

有人反应,加了这代码之后,文章页有{dede:channel} {/dede:channel} 这个的时候更新不了,于是可以看了下代码,可以改成这样:

代码如下:

  1. if($sanji)
  2. {
  3. $typeid = $row['id'];
  4. if((class_exists('PartView')))
  5. {
  6. $pv = new PartView($typeid);
  7. $text = $likeType;
  8. $text= str_replace(array('{field', '/}'), array('[field', '/]'), $text);
  9. $pv->SetTemplet($text,'string');
  10. $artlist = $pv->GetResult();
  11. $likeType = $artlist;
  12. }
  13. }
复制代码


然后在channel.lib.php文件的开头 global $dsql; 的后面加上$sanji = $ctag->GetAtt('sanji');

调用的时候变成:

代码如下:

  1. {dede:channelartlist}
  2. {dede:field name='typeurl'/} {dede:field name='typename'/} //外框架
  3. {dede:channel type='sun' sanji='1'}//子框架
  4. <h3><a href="[field:typelink/]" target="_blank">[field:typename/]</a></h3>
  5. {dede:arclist row='5' titlelen='39'} //调用文章
  6. 连接: {field:arcurl/}
  7. 标题: {field:title/}
  8. {/dede:arclist}
  9. {/dede:channel}
  10. {/dede:channelartlist}  
复制代码


问题解决。

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

▶专业解决各类DiscuzX疑难杂症、discuz版本升级 、网站搬家 和 云服务器销售!▶有偿服务QQ 860855665 更多精品应用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2025-2-2 13:41 , Processed in 0.038181 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表