DedeCMS织梦模板使用扩展函数调用任意数据表的教程

站长新闻 12-16 浏览 273

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

DedeCMS织梦模板使用扩展函数调用任意数据表的教程

首先修改/include/extend.func.php,里面的把这段代码加进去:
//自定义函数调用数据表    

01 function table($table, $field, $id) 02     { 03     global $dsql; 04     $primarys = array(); 05     $table = strpos($table, '#@_') === false?(strpos($table, 'dede_') === false?'dede_'.$table:str_replace('dede_','dede_',$table)):$table; 06     $dsql -> Execute("me","SHOW COLUMNS FROM `$table`"); 07     while ($r = $dsql->GetArray()) 08     { 09         if($r['Key'] == 'PRI') $primarys[] = $r['Field']; 10             } 11         if(!empty($primarys)) 12             { 13         $primary = $primarys[0]; 14         $result = $dsql -> GetOne("SELECT `$field` FROM `$table` WHERE `$primary`= $id"); 15             } 16           return isset($result[$field])?$result[$field]:$result[$field]; 17         }
然后在我们需要调用数据的地方加上调用代码: {dede:field.字段 function='table("要调用的数据表","要调用的字段",@me)'/} //内容页,首页调用代码
[field:字段 function='table("要调用的表名","要调用的字段",@me)'/] //列表页频道页调用代码
举例说明: {dede:field.id function='table("dede_addonarticle","body",@me)'/}
释义:调用id为本文id的文章的body部分。 标签:
本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

热门推荐