dede SQL语句调取文章链接

先上一段代码:
思路:
北京//一级栏目
  北京新闻
  同城活动
天津//一级栏目
  天津新闻
  同城活动
我要在每个子栏目,都要调用“同城活动”下的新闻,但是,需要在北京栏目下调用北京的同城活动,天津下调用天津的同城活动,所以我需要自己写SQL语句,这句SQL的意思是:已知当前栏目ID和一个“同城活动”的公用栏目名字,那么搜索当前栏目ID,找到他的父栏目,然后搜索这个父栏目下的“同城活动”的栏目ID,根据这个栏目ID再搜索这个ID下的新闻内容,并且限定了8条。

{dede:sql sql="select * FROM `#@__archives` where typeid=(select id FROM `#@__arctype` where reid = (select reid FROM `#@__arctype` where id=~id~) and typename='同城活动') order by id desc limit 0,8"}
        <li><a href='[field:id runphp='yes'] $id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id]' target='_blank'>[field:title/]</a></li>
{/dede:sql}

在DEDE CMS中,有时需要进行多表联查,此时只能通过sql语句来调用文档,可是用默认的[field:arcurl/]无法获取文档的链接地址,后经到网上搜寻,找到调用“文章链接地址”的办法,如下:
在DEDE中,可以自由使用SQL语句来配合DEDE标签进行更多的个性化调用。通过SQL语句调用文档列表并获取其静态页面地址的方法。
基本参照格式为:
   {dede:sql sql='select 字段 From 表名称 where 条件语句'}
   [field:字段名/]
   {/dede:sql}
由上面这种基本格式,我们就可以基本转换出一条调用文档列表的调用标签了,代码为:
   {dede:sql sql='select * From dede_archives limit 10'}
   <a href="../plus/view.php?aid=[field:id/]">[field:title/]</a>
   {/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}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值