dedecms扩展函数的妙用

凤凰学院整理发布

2020-06-08

首先打开/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.id function='table("dede_addonarticle","body",@me)'/}
从数据表中取出:id为本文id的文章的body部分.