找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 193|回复: 0

[cms教程] 织梦arclist调用嵌套tag标签教程

[复制链接]

该用户从未签到

发表于 2021-3-13 09:07:31 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
有的时候我们的织梦网站列表页,或是首页,需要在arclist标签里面加上当前文章的标签。
         
        如何实现呢?
         
        用织梦提供的tag标签:
       
       
               
                       
                               
                                       
{dede:tag row='10' getall='1' sort='month'}
[*,[url=[field:link/],[field:tag /][/url]
{/dede:tag}
                               
                       
               
       

        这个标签无法实现,因为,无论是列表还是首页,调用出来的文章都是循环的,即在{dede:list}{/dede:list} 或{dede:arclist }{/dede:arclist}
         
        在这里面是无法嵌套的。
         
        下面是错误的:
       
       
               
                       
                               
                                       
{dede:arclist}
{dede:tag row='10' getall='1' sort='month'}
[*,[url=[field:link/],[field:tag /][/url]
{/dede:tag}
{/dede:arclist}
                               
                       
               
       

        错误原因是标签arclist不能嵌套另外的标签。
         
        解决方法:
         
        使用织梦提供的php接口:[field:id runphp=yes, ......[/field:id,
         
        完整的标签是:
       
       
               
                       
                               
                                       
{dede:arclist}
标签 : [field:id runphp=yes,
global $dsql;
$tags = '';
$query = "SELECT tag FROM `dede_taglist` WHERE aid='@me' ";
$dsql->Execute('tag',$query);
while($row = $dsql->GetArray('tag'))
{
$tags .= "[url=/tags.php?/".urlencode($row[,".$row['tag',."[/url], ";
}
@me=$tags;
[/field:id,
   {/dede:arclist}
                               
                       
               
       
       
       
                下面是伪静态,可以不用看,自己测试一下。
       
                 
       
                还有是我自己弄的伪静态那个 调用了两个字段
               
               
                       
                               
                                       
                                               
[field:id runphp=yes,global $dsql;$tags = '';$query = "SELECT tid,tag FROM `dede_taglist` WHERE aid='@me' ";$dsql->Execute('tid,tag',$query);while($row = $dsql->GetArray('tid,tag')){$tags .= "[url=/t-".urlencode($row[,".$row['tag',."[/url]";}@me=$tags;[/field:id,
                                       
                               
                       
               
       

        总结:
         
          如果你会php,那么,通过织梦提供的runphp=yes就可以调用很多不能嵌套的问题,这个功能非常有用,当然,一般的人也用不到这个,对于仿站,或是做二次开发也许会用到。
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-12-29 08:58

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表