Discuz添加自定義數(shù)據調用模塊

一、添加數(shù)據調用程序
二、source/language/block/ 目錄下新建模塊模板
    source/language/lang_blockclass.php在模塊管理里面根據情況創(chuàng)建模塊

三、后臺更新diy模塊分類緩存

四、添加相應的模塊模板

具體操作如下:
一、添加數(shù)據調用程序
1> 在  source/class/block/ 目錄下新建文件夾如 :ranklist
2>
在ranklist文件夾下,新建 blockclass.php,內容如下:


<?php
      if(!defined('IN_DISCUZ')) {
            exit('Access Denied');
      }
      $blockclass = array('name' => lang('blockclass', 'blockclass_ranklist'));
?>
在ranklist文件夾下,新建 block_ranklistmember.php,內容如下:


<?php
      if(!defined('IN_DISCUZ')) {
            exit('Access Denied');
      }

class block_ranklistmember extends discuz_block {

        public $setting = array();


        public function block_ranklistmember() {
              $this->setting = array(.........); //這兒對setting進行初始化
        }

        public function name() {
                // 這兒設置數(shù)據來源
                return lang('blockclass', 'blockclass_ranklist_script_ranklist');
        }

        public function blockclass() {
                // 這兒設置調用模塊類型
                return array('ranklist', lang('blockclass', 'blockclass_ranklist'));
         }

         public function fields() {
                  //這兒對fields進行設置,除了discuz本身支持的變量外,只有這兒設置的字段才可以在模板中調用。
                 $fields = array(.........); 
                 return $fields;
          }

        public function getsetting() {
                return $this->setting;
        }


        public function getdata($style, $parameter) {
                $list = array(.........);  // 這兒根據實際情況從數(shù)據庫或許相應的數(shù)據
                return array('html' => '', 'data' => $list);
        }
}


?>
以上代碼中 lang(....),均為語言處理,這里略過。還有 $setting,$fields,$list的格式可以參考 source/class/block/member/block_member.php中對應變量的格式。


二、source/language/block/ 目錄下新建文件
<?php
      if(!defined('IN_DISCUZ')) {
            exit('Access Denied');
      }
      $lang = array(
            'ranklist_fids' => '所在版塊', 
            'ranklist_orderby' => '排序方式', 
            'ranklist_orderby_thread_num' => '按主題數(shù)倒序',
            'ranklist_dateline' => '排序時間段', 
            'ranklist_deteline_nolimit' => '不限', 
            'ranklist_deteline_last_week' => '上周', 
            'ranklist_deteline_last_month' => '上個月', 
            'ranklist_startrow' => '起始數(shù)據行數(shù)', 
            'ranklist_items' => '顯示數(shù)據條數(shù)', 
            'ranklist_items_comment' => '設置一次顯示的主題條目數(shù),請設置為大于 0 的整數(shù)', 
      );


?>


    source/language/lang_blockclass.php
<?php
    ......
        'blockclass_ranklist' => '排行榜類',
        'blockclass_ranklist_forum_member' => '版塊用戶排行',
        'blockclass_ranklist_script_forum_member' => '高級自定義',
        'blockclass_ranklist_field_author' => '用戶名',
        'blockclass_ranklist_field_authorid' => '用戶ID',
        'blockclass_ranklist_field_avatar' => '用戶頭像',
        'blockclass_ranklist_field_avatar_middle' => '用戶頭像(中)',
        'blockclass_ranklist_field_avatar_big' => '用戶頭像(大)',
        'blockclass_member_field_authorbio' => '用戶自我介紹',
        'blockclass_ranklist_field_thread_num' => '主題數(shù)',
        ....
?>
三、進入后臺-工具-更新緩存,一定要勾選“DIY 模塊分類緩存”,然后開始更新。


四、進入后臺-門戶-模塊模板,添加對應的模板。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容