首页 >

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

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

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

织梦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");              }            return isset($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模板使用扩展函数调用任意数据表的教程
  • {dede:field name='position'/}去掉主页或者不带链接
  • {dede:field name='position'/}去掉主页或者不带链接 | {dede:field name='position'/}去掉主页或者不带链接 ...

    织梦DedeCMS模板使用扩展函数调用任意数据表的教程
  • 织梦DedeCMS缩略图终极解决办法(不变形、居中裁剪)的三种方法
  • 织梦DedeCMS缩略图终极解决办法(不变形、居中裁剪)的三种方法 | 织梦DedeCMS缩略图终极解决办法(不变形、居中裁剪)的三种方法 ...

    织梦DedeCMS模板使用扩展函数调用任意数据表的教程
  • windows下替代织梦DedeCMS收费客户端工具实现计划任务
  • windows下替代织梦DedeCMS收费客户端工具实现计划任务 | windows下替代织梦DedeCMS收费客户端工具实现计划任务 ...