织梦dedecms调用指定栏目名称及地址的时候,不想要全部显示出来,只想显示部分栏目出来,那用默认的标签基本上说是很难实现的,那么在这里分享一个百分之百正确好用的方法。
下面是代码
{dede:sql sql="SELECT typename,typedir,defaultname FROM dede_arctype where id IN (2,3,4,5,6) "}
<a href=http://www.dede58.com/"[field:typedir function='str_replace("{cmspath}","",@me)'/]/" target="_blank">[field:typename/]</a>
{/dede:sql}
我们来解析一下这个代码,这个代码的意思就是把织梦系统后台栏目id为2,4,5,6的栏目名称及地址显示出来;SELECT typename,typedir,defaultname FROM dede_arctype where id IN (2,3,4,5,6)这个sql语句的意思就是在dede_arctype查询typename,typedir,defaultname这三个字段,满足的条件是id要在(2,3,4,5,6)这些数字中,相信用一点sql基本的朋友都很容易理解的,function='str_replace("{cmspath}","",@me)'/]是指用空格替换{cmspath},str_replace是php中的一个替换函数。如果能理解就理解,不能理解复制过去,把IN (2,3,4,5,6)改为你想显示的栏目id即可。当然这只是一个最核心也是最简单的部分,如果要做成我们想要的效果,可以举一反感,做一些修改。