dedecms标签{dede:php}使用方法

2020-04-10

在dedecms里有一个{dede:php}标签可以用来在模板文件里写php代码,这样就极大的方便了我们调用各个表里数据的问题。下面我来教大家如何使用该标签。

首先开启{dede:php}标签的使用权限

默认的{dede:php}不能使用的需要在后台系统->系统基本参数->其它选项里删除禁用的php标签。如下图

 

这样就可以在模板里面使用{dede:php}标签了。

标签的基本结构和其他调用标签类似有开头标签和结束标签

{dede:php}

//一些php代码

{/dede:php}

下面介绍标签的使用

1.最简单使用方法

{dede:php}

echo "holle word";

{/dede:php}

2.查询一条数据输出的方法

{dede:php}
//查询一条数据返回的是数据库中的字段与内容的关联数组
$row1 = $dsql->GetOne("select * from dede_arctype where id=1);

//输出方法
echo $row1['表dede_arctype中想输出的字段'];

//例如输出表dede_arctype中的typename字段的值:
echo $row1['typename'];
{/dede:php}

3.查询多条数据的输出方法

{dede:php}
//查询多条数据用while循环进行输出
$sql = "select * from dede_arctype id>1";//sql语句
$dsql->SetQuery($sql);//格式化sql语句
$dsql->Execute();//执行sql语句
while($row = $dsql->GetArray()){

...需要输出的字段$row['字段'];//可嵌套html一起输出 ,也可在循环内部查询
	
}

//下面演示查询数据库中所有栏目id为1的文章

$sql = "select * from dede_archives typeid=1";
$dsql->SetQuery($sql);
$dsql->Execute();
while($row = $deql->GetArray()){
$sql1 = "select * from dede_arctype where id=".$row['typeid'];//查询该文章所属的栏目
$row1 = $dsql->GetOne($sql1);//执行单条查询
$dir = $row1['typedir'];//取出该栏目的目录路径
$dir = str_replace("{cmspath}","",$dir );//去掉数据库中栏目目录路径的默认“{cmspath}”字符。

echo "".$row['title']."";

}

{/dede:php}

补充:

{dede:php}标签一般我们都会在模板里面使用,这时候我们可以使用$refObj->Fields['字段']的方式来获取当前模板所对应的当前栏目的字段。

注意:$refObj->Fields中的O和F是大写,写成小写则无法使用。

例如我们在文章模板里需要调用当前文章的缩略图,那么可以这么写,在调用织梦没有给出系统标签的时候有很强的灵活性。

{dede:php}
echo "当前文章的缩略图地址为:".$refObj->Fields['picname'];//文章缩略图字段为picname
{/dede:php}
上一篇:没有了
分享到:
  • 收藏