dedecms织梦sql基本语法 直接调用数据库

softyun3年前cms教程69

今天教大家dedecms织梦sql基本语法直接调用数据库,希望对你有所帮助
我们在修改使用织梦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教程:Ubuntu/Debian上安装 PHP 5.3, Nginx 和 PHP-fpm

  尽管Apache已经占据半片江山,但很多人仍然在寻找其他的方式去托管他们的站点,Apache不只是一个选择,其他很多优秀的服务器程序例如lighthttp和nginx也是不错的选择。本教程将要...

如何利用二行代码解决全部网页木马(含iframe/script木马)

相信大多数朋友都是iframe木马的受害者,有朋友的网站被注入了N回iframe,心情可想而知。而且现在ARP攻击,注入iframe也是轻而易举的事,仅局域网里都时刻面临威胁,哎,什么世道。在阅读本文...

织梦CMS调用栏目的地址(非标签调用)

 织梦CMS 调动栏目的地址,静态时为静态访问地址,动态浏览时为动态访问地址。 $sql="SELECT * FROM dede_arctype where topid=0 and ishidden ...

dedecms在plus目录调用当前模板head.htm,footer.htm方法

在织梦dedecms的plus文件夹里面有许多常用的模板的头部和尾部都是单独的写的,最简单的方法就是把默认模板的head.htm和footer.htm复制过来就行了,只是每次修改后又要再复制一次,为了...

DEDE出现“Upload filetype not allow”的原因及解决办法

本人是在近日升级DEDE5.6以后出现这个问题的,以下说明错误原因和解决办法。 如果有同学是按某些朋友用删除代码的方法解决问题的话,建议你修正此做法,毕竟这是有很大安全风险的。而DEDE本身的安全隐患...

让跳转网址直接链接而非跳转的最简单方法

1、列表页的实现:/include/inc_arclist.php查找$row['arcurl'] = $this->GetArcUrl(在前面加上:if($row['redirecturl']...