DedeCMS使用扩展函数调用任意数据表的方法

织梦系统有一个extend.func.php文件,我们可以在里面写上自定义函数来实现自己想要的功能,比如今天我们要实现扩展函数来调用Dede的任意一个数据表的内容。

DedeCMS使用扩展函数调用任意数据表的方法

首先修改/include/extend.func.php,里面的把这段代码加进去:



//自定义函数调用数据表

function table($table, $field, $id)

{

global $dsql;

$primarys = array();

$table = strpos($table,'#@_') ===false?(strpos($table,'dede_') ===false?'dede_'.$table:str_replace('dede_','dede_',$table)):$table;

$dsql -> Execute("me","SHOW COLUMNS FROM `$table`");

while($r = $dsql->GetArray())

{

if($r['Key'] =='PRI') $primarys[] = $r['Field'];

}

if(!empty($primarys))

{

$primary = $primarys[0];

$result = $dsql -> GetOne("SELECT `$field` FROM `$table` WHERE `$primary`= $id");

}

returnisset($result[$field])?$result[$field]:$result[$field];

}

然后在我们需要调用数据的地方加上调用代码:



{dede:field.字段 function='table("要调用的数据表","要调用的字段",@me)'/}//内容页,首页调用代码

[field:字段 function='table("要调用的表名","要调用的字段",@me)'/]//列表页频道页调用代码

举例说明:



{dede:field.id function='table("dede_addonarticle","body",@me)'/}

释义:调用id为本文id的文章的body部分。

注明:本文为星速云原创版权所有,禁止转载,一经发现将追究版权责任!

(0)
上一篇 2022年7月12日 下午5:29
下一篇 2022年7月12日 下午5:29

相关推荐

发表评论

登录后才能评论
问答社区 QQ客服
微信客服
微信客服
分享本页
返回顶部