HDWiki中block的结构

2010-09-17 14:51 来源:www.chinab4c.com 作者:admin

       HDWiki中block的结构非常复杂,很多热爱HDWiki的朋友都常常说到.虽然后台很好控制。但是使用和修改起来十分复杂。我们将结合HDwiki的结构特点。来谈谈如何hdwiki的block工作原理.

      首先我们知道hdwiki的block在后台是可以控制的。他存储在block表中。里面有block文件的位置,名称,函数名称,hdwiki的tpl模板.以及所处的文件和位置.

      每个hdwiki block的结构都一样。包含block\default中。表示同default模板同步使用。我们来分析news这个block.里面有个news.php.类的名称也是news.block的构造函数中内容主要初始化$db,和$base 基础类.

      function news(&$base) {
  $this->base = $base;
  $this->db = $base->db;
 }

     我们看到news.php有该函数.他就是被block调用的函数.

     function recentnews($setting){
  $indexnewscache=$this->base->cache->getcache('indexnewscache',300);
  if(!$indexnewscache){
   $this->base->load('doc');
   $newslist=$_ENV['doc']->getnews();
   $indexnewscache=array(
    'newslist'=>$newslist
    );
   $this->base->cache->writecache('indexnewscache',$indexnewscache);
  }
  return array('config'=>$setting, 'list'=>$indexnewscache['newslist']);
 }

    也是我们所谓的hdwiki的block主调函数.

    来源:http://www.chinab4c.com