[使用]dede sql基本语法 直接调用数据库

我们在修改使用织梦cms模板时,会用到很多标签,这是dede自身的数据调用命令,可以调用MYSQL的各种数据。这是非常方便的,当我们想要修改文章的频道、列表与内容摘要,甚至是显示多少列,显示什么统计数据,都可以用这些标签直接调

我们在修改使用织梦cms模板时,会用到很多标签,这是dede自身的数据调用命令,可以调用MYSQL的各种数据。这是非常方便的,当我们想要修改文章的频道、列表与内容摘要,甚至是显示多少列,显示什么统计数据,都可以用这些标签直接调取。

 

但是这些标签也不是万能的。也许当初织梦在开发制作时,只是按照基本模板要求进行配置标签,所以有些数据的调用,是不能跨模板调用的。这是非常的头痛。但如果懂得了SQL,这时候我们不需要用标签,直接使用SQL语句,灵活地从数据库当中调用我们需要的内容。

 

那怎样才能调用数据库中的内容呢?

举个简单的例子,企业模板当中的公司简介一般可以采用单页文档,它在频道模型里,那我们在首页如何调用单页文档?步骤如下:

 

1.首页在后台单页文档管理里添加一个单页文档,内容编辑框输入我们要的内容生成。

2.在需要调用单页文档的地方加入SQL万用标签

{dede:sql sql="select body from dede_sgpage where aid=2"}[field:body /]{/dede: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的字符过滤掉,只显示文本。

 

 

这是不是非常方便呢?其实在织梦模板里面,我们可以自由使用SQL语句来配合织梦模板标签,进行我们自己更多的个性化调用。

其中dede sql基本语法 格式为:

{dede:sql sql="select  字段 From 表名称 where 条件语句"}
[field:字段名/]
{/dede:sql}

 

从这种基本格式,就可以转换出一条调用文档列表的调用标签了,代码为:

{dede:sql sql="select  * From dede_archives  limit 10"}
<li>·<a href="/plus/view.php?aid=[field:id/]">[field:title/]</a></li>
{/dede:sql}

 

细心的朋友可以注意到了,上面的文档链接的底层模板地址是动态的,那么要怎么样来进行转换,让他链接到静态地址呢?

这里就只需要对[field:id/]进行一下转换,转换后的完整代码为:

{dede:sql sql="SELECT * FROM dede_archives limit 10"}
<li>·<a href="[field:id runphp='yes'] $id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id]" title="[field:title/]"  target="_blank">[field:title function=cn_substr(@me,30,0)/]</a></li>
{/dede:sql}
 

 

这样的sql万能语句可以让我们在修改dede模板时,更加随心所欲得到自己想要的数据与内容,大家有时间可以深入研究一下哦。

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

dedecms织梦默认的TAG标签不是很灵活。有时候我们的标签需要进行一个分类,能不能像{dede:arclist}标签的自定义属性(如:flag=c,h),这样全站调用的时候更灵活。 全站调用TAG标签方法一般是: {dede:tag row='100' sort='new' getall='1'}a target="_blank
未审核文档的TAG会显示在TAG列表页面, 固然点击进入TAG时, 相关的未审核文章不会显示出来, 这样对用户体验是很不好的. DEDECMS暂时没有提供这个功能,所以要解决这个问题, 让DEDECMS不显示未审核文档的TAG, 就要修改TAG的显示库文件 tag.lib.php。 方法一 打
我们都知道DEDECMS生成的文件夹是按天生成的,只要传了图片就会自动建立个年月日的文件,centos系统下,都是随便排序的,很难找到对应文件夹,如果要按顺序排列,要怎么操作呢? 一、文件管理器: 修改 /dede/templets/file_manage_main.html $dh = dir($inp
我们在用到织梦dedecms软件模型的时候,手动指定地址通常只能是引用其他网址或者链接,我们要实现直接选取站内的文件,这个要怎么操作呢?下面小编一步步为您解答,最终效果如下图所示: 实现教程 1、打开 /dede/templets/soft_add.htm 找到 input type=text
我们有时候需要对织梦文档的点击量进行批量维护,比如采集来的文章,点击量都为0,需要批量修改,可以用到如下方法1。 1、在数据库里运行下面的代码就可以了,文章的点击量变得随机从500到1000 UPDATE dede_archives SET click=FLOOR(500 + (RAND() * 1000))
用过dedecms的朋友都知道,织梦cms后台系统基本参数里是无法直接上传图片的,我们更换logo图只能到ftp里替换,非常的不方便,我们如果想直接在系统基本参数里上传,要怎么处理呢?在这里需要对代码进行修改,具体流程如下: 实现方法,打开/dede/templets/sy