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

秋天,是收获的季节,它因收获而变得美丽。苹果成熟了,成熟的苹果染红了大树,葡萄成熟了,成熟的葡萄在向我们微笑,桃子也成熟了,桃子像小女孩粉红的脸蛋。

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

首先修改/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部分。

本文DedeCMS如何使用扩展函数调用任意数据表的方法到此结束。我的青春还在继续,再多荆棘也要向前奔跑。小编再次感谢大家对我们的支持!

标签: DedeCMS