织梦dedecms通过dede:sql标签使用SQL语句调用数据库内容

dedecms模板机制提供了常用的网站数据调用标签,织梦dedecms程序提供的调用标签可以满足大部分网站的调用需求,可对于有更大需求,需要再灵活调用网站内容的dedecms用户来说显然不够,因此dedecms很人性化地提供了SQL万用标签{dede:sql}{/dede:sql},通过该标签,dedecms模板作者可以插入SQL语言查询数据库并调用数据库内容。

标签基本格式:

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

示例一:

1
2
3
{dede:sql sql="select body from dede_sgpage where aid=2"}
[field:body /]
{/dede:sql}

意思是:从表dede_sgpage选择字段body中对应字段aid中为2的内容

示例二:

1
2
3
{dede:sql sql="select content from dede_arctype where id=2"}
[field:content function=cn_substr(Html2Text(@me),600)/]
{/dede:sql}

意思是:从表dede_arctype选择字段content中对应字段id为2的内容

实际应用:调用文档列表的调用标签

1
2
3
{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/]进行转换使其变成静态链接地址,转换后的完整代码为:

1
2
3
{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}

提醒:使用该标签调用dedecms数据库内容需要了解dedecms数据库中各数据表包含的内容。

网友留言:

  1. 2016-03-24回复

    {dede:sql sql=”select body from dede_sgpage where aid=2″}
    [field:body /]
    {/dede:sql}
    万一这个sql语句中的条件aid是一个变量怎么办

发表留言