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='';

DEDECMS万能标签{dede:sql}使用教程详解的更多相关文章

  1. dede的pagelist标签的listsize数字属性详解(借鉴)

    dede的pagelist标签的listsize数字属性详解.见远seo经常用织梦搭建各种网站,有次发现列表页面的分页显示超过div的界限,也就是溢出了或者说是撑破了.后来经过研究发现是pagelis ...

  2. dedecms 图集标签{dede:productimagelist} {dede:field name='imgurls'}&nbs

    1.{dede:productimagelist}{/dede:productimagelist} 2.{dede:field name='imgurls'}{/dede:field} 这两个图集标签 ...

  3. dede的pagelist标签的listsize数字属性详解

    转载▼http://blog.sina.com.cn/s/blog_a4f3bd4e01012c8n.html dede的pagelist标签的listsize数字属性详解.见远seo经常用织梦搭建各 ...

  4. 史上最全的maven pom.xml文件教程详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  5. webpack安装配置使用教程详解

    webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对 ...

  6. Mybatis SQL映射文件详解

    Mybatis SQL映射文件详解 mybatis除了有全局配置文件,还有映射文件,在映射文件中可以编写以下的顶级元素标签: cache – 该命名空间的缓存配置. cache-ref – 引用其它命 ...

  7. Java程序员从笨鸟到菜鸟之(一百零二)sql注入攻击详解(三)sql注入解决办法

    sql注入攻击详解(二)sql注入过程详解 sql注入攻击详解(一)sql注入原理详解 我们了解了sql注入原理和sql注入过程,今天我们就来了解一下sql注入的解决办法.怎么来解决和防范sql注入, ...

  8. Java程序员从笨鸟到菜鸟之(一百)sql注入攻击详解(一)sql注入原理详解

    前段时间,在很多博客和微博中暴漏出了12306铁道部网站的一些漏洞,作为这么大的一个项目,要说有漏洞也不是没可能,但其漏洞确是一些菜鸟级程序员才会犯的错误.其实sql注入漏洞就是一个.作为一个菜鸟小程 ...

  9. SAE上传web应用(包括使用数据库)教程详解及问题解惑

    转自:http://blog.csdn.net/baiyuliang2013/article/details/24725995 SAE上传web应用(包括使用数据库)教程详解及问题解惑: 最近由于工作 ...

随机推荐

  1. precmd:6: job table full or recursion limit exceeded

    使用GDC Data Transfer Tool下载10999个isoforms.quantification.txt文件时,写了shell循环的小脚本: cat all_id_file |while ...

  2. WebSocket协议:5分钟从入门到精通

    一.内容概览 WebSocket的出现,使得浏览器具备了实时双向通信的能力.本文由浅入深,介绍了WebSocket如何建立连接.交换数据的细节,以及数据帧的格式.此外,还简要介绍了针对WebSocke ...

  3. 用Python玩转微信(一)

    欢迎大家访问我的个人网站<刘江的博客和教程>:www.liujiangblog.com 主要分享Python 及Django教程以及相关的博客 交流QQ群:453131687 今天偶然看见 ...

  4. thinkinginjava学习笔记03_基本语法

    由于java是c系语言,基本保留c语言的所有基本操作,就快速过一下: java中的基本操作符仅仅对基本类型有效:=.==.!=对所有对象有效(值传递),String类支持+.+=; 在对基本数据进行算 ...

  5. Head First设计模式之策略模式

    这是学习的第一个设计模式,而书中写的实例相对比较复杂,参考了网上的文章进行总结 一.定义 策略模式(strategy pattern): 定义了算法族, 分别封闭起来, 让它们之间可以互相替换, 此模 ...

  6. (译)ABP之Abp Session

    原文地址:https://aspnetboilerplate.com/Pages/Documents/Abp-Session 介绍 ABP提供IAbpSession接口获取当前用户和租户信息,而不是使 ...

  7. assert断言

    https://www.cnblogs.com/ggzss/archive/2011/08/18/2145017.html assert是一个宏定义,其作用是如果它的条件返回错误,则终止程序执行,原型 ...

  8. 利用 html2canvas 做个简单的诗词卡片生成器

    html2canvas 简介 html2canvas 顾名思义,就是一个可以把 DOM 元素转换成图片的类库,常用于网页截图.网页截图常见的应用场景是,在意见反馈里对当前页面进行截图,方便反馈页面出现 ...

  9. LVS集群之工作原理和调度算法(2)

      LVS的工作机制 LVS里Director本身不响应请求,只是接受转发请求到后方,Realservers才是后台真正响应请求. LVS 工作原理基本类似DNAT,又不完全相像,它是一种四层交换,默 ...

  10. element-ui,router.push到其他路由,菜单栏不会高亮对应的路由

    使用饿了吗的路由,使用this.$router.push({path: ''})跳到其他的路由,菜单不会高亮. 如图所示,点击图上三个位置,需要使用this.$router.push({path: ' ...