DEDECMS万能标签{dede:sql}使用教程详解

DEDECMS万能标签{dede:sql}使用教程详解

http://www.dede58.com/a/dedebq/2015/0226/1737.html

1.首页在后台单页文档管理里添加一个单页文档,内容编辑框输入你要的内容生成。
2.在需要调用单页文档的地方加入SQL万用标签
{ dede :sql sql=select body from dede_sgpage where aid=2}[field:body /]{/dede:sql}
相信熟悉SQL语言的朋友很容易看懂这句含义。意思其实就是选择数据表dede_sgpage 的body字段输入,aid=2这里的2表示你创建单页文档ID数字,你使用时做下相应修改即可。
又如这句SQL标签样例代码
{dede:sql sql=”select content from dede_arctype where id=2″}
[field:content function=cn_substr(Html2Text(@me),600)/]
{/dede:sql}
根据上面的例子,应该很好理解了,这里主要说明一下cn_substr表示截取600个字符也就是300个汉字。Html2Text代表把含有HTML的字符过滤掉,只显示文本。
其实除了上面的例子外,在Dede系统里面,我可以可以自由使用SQL语句来配和织梦标签进行更多的个性化调用。他们的基本参照格式为:
{dede:sql sql=”select 字段 From 表名称 where 条件语句”}
[field:字段名/]
{/dede:sql}
由上面这种基本格式,我们就可以基本转换出一条调用文档列表的调用标签了,代码为:
{dede:sql sql=”select * From dede_archives limit 10″}
·[field:title/]
 
{/dede:sql}
 
大家看到了上面的文档链接的底层模板地址的是动态的,那么我们要怎么样来进行转换,让他链接到静态地址呢,这里我们只需要对[field:id/]进行一下转换,转换后的完整代码为:
{dede:sql sql=”SELECT * FROM dede_archives limit 10″}
·[field:title function=cn_substr(@me,30,0)/]
 
{/dede:sql}
标签名称:sql 功能说明:用于从模板中用一个SQL查询获得其返回内容适用范围,全局使用
基本语法:{dede:sql sql=””}底层模板{/dede:sql}
参数说明:sql=”” 完整的SQL查询语句
底层模板字段:SQL语句中查出的所有字段都可以用[field:字段名/]来调用
应用实例:
1.调用某个特定会员发布的文章内容:
{dede:sql sql=’Select * from dede_archives where mid=1′}
[field:title/]
{/dede:sql}
mid为用户ID ,可以参考二次开发中关于dede_archives的数据表字段介绍
 
首页调用文章正文内容,比较好的解决方法:
方法一:
 
{dede:sql sql=”SELECT aid,typeid,body,body1,body2,body3,body4,body5 FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0,1″}
[field:body /] [field:body1 /] [field:body2 /] [field:body3 /] [field:body4 /] [field:body5 /]
{/dede:sql}
 
方法二:
 
{dede:sql sql=”SELECT aid,typeid,body FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0,1″}
[field:body /]
{/dede:sql}
调用说明:
其中typeid=2,栏目ID号,表示调用此ID栏目内的文章,换成 aid=1 则表示调用的 aid 为 1 的文章,
DESC 表示排序,按从大到小排,换成 ASC 则按从小到大排序,
LIMIT 0,1 表示调用数量,也可以写成数量LIMIT 1,这个1代表调用的数量。
===============================================
SQL语句分为两类,功能型的和内容调用型,功能型的主要是对数据库进行常规的操作,例如{insert、update},数据调用型的操作就 (select),两种类型的SQL语句使用发放也很简单,如果是功能型的只需要在系统后台[系统]-[SQL命令运行工具]中进行使用,如果是模板标签 的数据调用类型,只需要在模板相应位置添加标签即可。
 
功能型SQL语句整理:
 
功能说明:添加自定义属性
insert into `dede_arcatt`(sortid,att,attname) values(9,’d’,’评论’);
alter table `dede_archives` modify `flag` set (‘c’,’h’,’p’,’f’,’s’,’j’,’a’,’b’,’d’) default NULL;
 
功能说明:批量为作者和来源赋值
UPDATE dede_archives SET writer=’要赋的值’ WHERE writer=”;
UPDATE dede_archives SET source=’要赋的值’ WHERE source=”;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114120.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • .Net Core HttpClient处理响应压缩「建议收藏」

    .Net Core HttpClient处理响应压缩「建议收藏」前言在上篇文章[ASP.NETCore中的响应压缩]中我们谈到了在ASP.NETCore服务端处理关于响应压缩的请求,服务端的主要工作就是根据Content-Encoding头信息判断采用哪种方式压缩并返回。之前在群里有人问道过,现在的网络带宽这么高了还有必要在服务端针对请求进行压缩吗?确实,如今分布式和负载均衡技术这么成熟,很多需要处理高并发大数据的场景都可以通过增加服务器节点来进行。但是,在资源受限的情况下,或者是还没必要为了某一个点去增加新的服务器节点的时候,我们还是要采用一些程序本身的常规处理

    2022年7月15日
    14
  • 关于ViewPager高度自适应(随着pager页的高度改变Viewpager的高度)

    关于ViewPager高度自适应(随着pager页的高度改变Viewpager的高度)一.背景:    第一次写博客还是技术性博客,为了回答CSDN上一位网友的问题,决定写一篇博客既帮助别人又帮助自己,经常看鸿洋大神,郭大神的博客,两位大神真是业界良心,不仅仅技术厉害,博客也写的让人一目了然,自身觉得自己内心知道的知识讲给别人或者是像这样写博客给别人看,让别人也了解,是一件很厉害的事。所以第一次写这种技术性博客,不知道看到的人是否能看懂得到一些启发,如果有什么不足的地方希

    2022年7月22日
    14
  • 静态分析的四种基本方法是_比较静态均衡分析方法

    静态分析的四种基本方法是_比较静态均衡分析方法*数据流分析(DataFlowAnalysis)将数据看作是图,节点是程序的基本快,边是描述控制如何从一个基本快转移掉另一个基本快。图可以解决很多问题,例如:以图中边的抽象得出数学方程,七届就

    2022年8月4日
    6
  • 浅谈 AnalyticDB SQL 优化「建议收藏」

    浅谈 AnalyticDB SQL 优化「建议收藏」数据库性能优化需要从多个方面进行综合考虑。例如系统资源是否充足、资源模型的设计(高性能vs大存储)、表的设计以及规划、SQL改写和优化等等,本文只要介绍ADBsql的优化。

    2022年9月16日
    3
  • rsyslogd-学习&使用

    rsyslogd-学习&使用简介【这一篇博客不是完整的解释rsyslogd的运行原理,只是一个自己查找资料的记录】rsyslog是一个syslogd的多线程增强版。现在Fedora和Ubuntu,rhel6默认的日志系统都是rsyslog了。rsyslog负责写入日志,logrotate负责备份和删除旧日志,以及更新日志文件学习资料1.官方网站官方网站:http://www.rsyslog.com/这是官

    2022年8月15日
    5
  • 2020考研,老学长帮你规划[通俗易懂]

    2020考研,老学长帮你规划[通俗易懂]高能干货预警,文章目前已经近三万字,这可能是最负责的一篇文章了。文章很长,建议拿好笔记慢慢看。本文会解决你在考研各科在不同时期不同阶段遇到的所有问题,方法具体到草稿纸怎么使用,课本具体怎么使用,相信我,读完你一定会有巨大收获。我总结了我一年以来遇到的所有问题,使用的所有方法。既然最终目的是在考研这场「考试」中获得高分,那么所有的时间和精力,都应该围绕着「考试」进行,才是效率最高的方式。但是…

    2022年9月24日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号