DEDECMS模板机制为网站开发者提供了多种常用的数据调用标签,这些标签能够满足大多数网站的基本需求。然而,对于一些需要更灵活调用内容的用户来说,DEDECMS内置的标签可能显得不足。为此,DEDECMS特别设计了SQL万用标签{dede:sql}{/dede:sql}。通过这一标签,模板开发者可以使用SQL语句直接查询数据库并调用相关内容。

标签基本格式:


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

示例一:


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

这段代码的作用是从表dede_sgpage中选择字段body中对应aid为2的内容。

示例二:


{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的内容。

实际应用:文档列表调用


{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}

    提醒:在使用该标签调用DEDECMS数据库内容时,了解DEDECMS数据库中各数据表的具体内容是非常重要的。
    这有助于确保查询的准确性和效率,同时避免潜在的安全风险。因此,在进行复杂查询前,请务必熟悉DEDECMS数据库结构。