网站最近更新等地方,发现DTCMS没有获取所有栏目文章列表的标签,只能自己写

思路:获取所有栏目文章列表不难,难点在于linkurl的写法

1、制作获取所有文章列表标签

DTcms.Web.UI\Label\article.cs中

  /// <summary>/// 自定义:文章列表/// </summary>/// <param name="top">显示条数</param>/// <param name="strwhere">查询条件</param>/// <returns>DataTable</returns>protected DataTable get_article_list(int top, string strwhere){return new BLL.article().GetList(top, strwhere, " sort_id asc,add_time desc").Tables[0];}

2、制作linkurl,首先需要获得文章详细页的调用名称,比如furniture_show,组成linkurl("furniture_show",{dr[id]})。{dr[id]}为文章ID,

这里需要读取xmlconfig\urls.config 节点

DTcms.Web.UI\Label\category.cs中 增加两个标签

 /// <summary>/// 自定义:根据栏目的别名 返回URL名称/// </summary>/// <param name="category_name">栏目的别名</param>/// <returns>String</returns>protected string get_url_name(string category_name, string attrType){string urlchannel = string.Empty;BLL.url_rewrite bll = new BLL.url_rewrite();if (!string.IsNullOrEmpty(category_name)){urlchannel = bll.GetInfo(category_name, attrType).name;}return urlchannel;}/// <summary>/// 自定义:返回当前类别调用别名/// </summary>/// <param name="category_id">类别ID</param>/// <returns>String</returns>protected string get_category_name(string category_id){string default_value = string.Empty;BLL.channel bll = new BLL.channel();if (bll.Exists(Convert.ToInt32(category_id))){return bll.GetModel(Convert.ToInt32(category_id)).name;}return default_value;}

3、在index.html模版中

   <%set DataTable redNews=get_article_list(1, "status=0 and is_red=1 and img_url<>''")%><%foreach(DataRow dr in redNews.Rows)%><li><a title="{dr[title]}" href="<%linkurl(get_url_name(get_category_name({dr[channel_id]}),"detail"),{dr[id]})%>"><span class="note-bg"></span><span class="note-txt">{dr[title]}</span><img src="{dr[img_url]}" /></a></li><%/foreach%>

   <%set DataTable newest=get_article_list(10, "status=0 ")%><%foreach(DataRow dr in newest.Rows)%>
<li><span><%datetostr({dr[add_time]},"yyyy-MM-dd")%></span><a title="{dr[title]}" href="<%linkurl(get_url_name(get_category_name({dr[channel_id]}),"detail"),{dr[id]})%>"><%cutstring({dr[title]},35)%></a></li><%/foreach%>

转载于:https://www.cnblogs.com/qigege/p/4952440.html

DTCMS自定义标签,获取所有栏目文章列表TOP,以及文章通用URL相关推荐

  1. ECshop在文章列表页调用文章简介

    1.打开includes/lib_article.php文件: 找到:大约21行-82行代码,替换为一下 /** * 获得文章分类下的文章列表 * * @access public * @param ...

  2. EYOU 文章列表如何调用文章主体

    使用易优模版时,文章列表,栏目列表如何调用文章主体呢?下面代码即可实现 {eyou:arclist titlelen='20' infolen='50' row='4' addfields='cont ...

  3. SpringBoot整合freemarker中自定义标签获取字典表的数据

    因为在前端要根据字典表中的数据去将1.2这些值转换成对应的文字解释 1.首先要创建一个类去实现 TemplateDirectiveModel 类 @Component public class Dic ...

  4. Android复习05【网络编程---WebView获取文章信息、保存用户名与密码、设置菜单样式、收藏文章列表】

    2020-04-02-星期四[源码可私聊我,QQ:386335886] 写篇文章不容易,点个赞再走吧,求求了~  目   录 网络访问-思维导图 玩Android网站---查看登录Cookie 适配器 ...

  5. layui获得列表json数据_golang实战开发之博客功能篇:文章列表的读取与展示和分类筛选展示处理...

    前面我们介绍了文章详情页面的展示的逻辑代码实现,这一节,我们将继续讲解文章列表的读取和展示.文章根据分类进行筛选.最新文章.热门文章等的调用处理逻辑. 首先,我们先编写文章列表页的前端代码.这里,我们 ...

  6. 自定义标签JSTL标签库详解

     自定义标签是JavaWeb的一部分非常重要的核心功能,我们之前就说过,JSP规范说的很清楚,就是Jsp页面中禁止编写一行Java代码,就是最好不要有Java脚本片段,下面就来看一下自定义标签的简 ...

  7. javaweb学习总结(二十三)——jsp自定义标签开发入门

    一.自定义标签的作用 自定义标签主要用于移除Jsp页面中的java代码. 二.自定义标签开发和使用 2.1.自定义标签开发步骤 1.编写一个实现Tag接口的Java类(标签处理器类) 1 packag ...

  8. 转载:javaweb学习总结(二十三)——jsp自定义标签开发入门

    javaweb学习总结(二十三)--jsp自定义标签开发入门 转自:http://www.cnblogs.com/xdp-gacl/p/3916734.html 一.自定义标签的作用 自定义标签主要用 ...

  9. java程序设计颜志军_JSP 自定义标签之一 简单实例

    在JSP中使用自定义标签可以达到这样的目的,事实上,我们所熟知的各类框架基本上都是通过自定义标签的形式来实现的. 通过使用自定义标签,我们可以将实现复杂的逻辑在页面用简单的标签来加以展示.下面我们来实 ...

最新文章

  1. SourceTracker—微生物来源分析
  2. MySQL的TRUNCATE关键字
  3. 如何通过Meta Learning实现域泛化(Domain Generalization)?
  4. Centos下安装配置WordPress与nginx教程
  5. python 时间序列预测_使用Python进行动手时间序列预测
  6. CuteEditor6.0使用配置心得体会(转)
  7. Android逆向笔记-查看app的log打印(含调试方式打开)
  8. python对abaqus本构二次开发_基于Python的Abaqus二次开发实例讲解
  9. 改造Python中文拼音扩展库pypinyin补充自定义声母全过程
  10. ERP进销存源码(进销存ERP系统)
  11. 用户名枚举/邮箱轰炸攻击
  12. c语言 long double输出,printf和long double
  13. 17. 进圈 编程练习
  14. 推荐几个免费的在线文本转语音网站(支持中英文多种语音)
  15. 艺展中国-一代名家刘泽仲作品展
  16. OpenCV - SIFT-SURF(Python实现)
  17. 计算机图形学(一) 视频显示设备_2_光栅扫描显示器
  18. java采集控制台日志
  19. 2015年第六届蓝桥杯C/C++程序设计本科B组决赛第二题
  20. 浪潮服务器2003系统,浪潮服务器安装WINDOWS 2003操作系统课件.ppt

热门文章

  1. 华南农业大计算机考研分数,2019华南农业大学考研复试分数线通知
  2. pcb文件转成原理图_初学PCB设计,到底该学习哪款软件?
  3. 广西电力职业技术学院计算机应用,广西电力职业技术学院电子与信息工程系
  4. vc 2008建立c语言,C语言纯外行,要运行别人给的一个代码,用VC2008
  5. 多级队列调度算法可视化界面_多级反馈队列调度算法
  6. 神经网络 异或_深度学习入门笔记(2)线性神经网络
  7. python wlsxwriter_python xlsxwriter模块的使用
  8. mysql的过程返回执行成功与失败_进行数据库操作的时候,操作错误或者失败,但是不报错...
  9. R语言中最强的神经网络包RSNNS
  10. python层次聚类_python中做层次聚类,使用scipy.cluster.hierarchy.fclusterdata方法 | 学步园...