1. <dd id="5jlnw"><center id="5jlnw"></center></dd>
    <dd id="5jlnw"><track id="5jlnw"></track></dd>

    <th id="5jlnw"></th>
    <em id="5jlnw"><acronym id="5jlnw"></acronym></em>
    1. 立即注冊 找回密碼

      QQ登錄

      只需一步,快速開(kāi)始

      Discuz開(kāi)發(fā) Discuz插件頁(yè)面嵌入類(lèi)型腳本格式

      2018-6-26 17:43| 發(fā)布者: 豬八戒| 查看: 2500| 評論: 0

      摘要: discuz插件頁(yè)面嵌入類(lèi)型腳本格式?php//全局嵌入點(diǎn)類(lèi)(必須存在)class plugin_identifier { function HookId_1() { ...... return ...; } function HookId_2() { ...... retur ...
      discuz 插件頁(yè)面嵌入類(lèi)型腳本格式
      <?php

      //全局嵌入點(diǎn)類(lèi)(必須存在)
      class plugin_identifier {

              function HookId_1() {
                      ......
                      return ...;
              }

              function HookId_2() {
                      ......
                      return ...;
              }

              ......

      }

      //腳本嵌入點(diǎn)類(lèi)
      class plugin_identifier_CURSCRIPT extends plugin_identifier {

              function HookId_1() {
                      ......
                      return ...;
              }

              function HookId_2() {
                      ......
                      return ...;
              }

              ......

      }

      ?>

      1、plugin_
      普通版腳本中的類(lèi)名以 plugin_ 開(kāi)頭。手機版腳本中的類(lèi)名以 mobileplugin_ 開(kāi)頭。

      2、identifier
      插件的唯一標識符,在插件設置中設置。

      3、CURSCRIPT
      嵌入點(diǎn)位于的腳本名,如 forum.php 為 forum。

      HookId
      函數名調用位置聲明位置第一個(gè)參數含義
      HookId()所有模塊執行前被調用腳本嵌入點(diǎn)類(lèi)
      HookId_output()模塊執行完畢,模板輸出前被調用腳本嵌入點(diǎn)類(lèi)array(
      'template' => 當前要輸出的模版,
      'message' => showmessage 的信息內容,
      'values' => showmessage 的信息變量,
      )
      global_HookId()模塊執行完畢,模板輸出前被調用全局嵌入點(diǎn)類(lèi)
      HookId_message()showmessage() 執行時(shí)調用腳本嵌入點(diǎn)類(lèi)array(
      'param' => showmessage() 函數的參數數組,
      )
      ad_adId()相應的廣告位中調用
      函數名為廣告位腳本 ID 如:ad_headerbanner()
      全局嵌入點(diǎn)類(lèi)
      腳本嵌入點(diǎn)類(lèi)
      array(
      'params' => 廣告位參數,
      'content' => 當前廣告位原本將要顯示的內容,
      )
      common()所有模塊執行前被調用全局嵌入點(diǎn)類(lèi)
      discuzcode()discuzcode() 函數執行時(shí)調用
      用于在帖子內容解析時(shí)嵌入自己的功能,函數中 $_G['discuzcodemessage'] 變量為待解析的字串
      全局嵌入點(diǎn)類(lèi)array(
      'param' => caller 函數的參數數組,
      'caller' => caller 函數,此嵌入點(diǎn)被哪個(gè)函數調用
      'discuzcode' 被 discuzcode() 調用
      'messagecutstr' 被 messagecutstr() 調用
      )
      deletethread()deletethread() 函數執行時(shí)調用
      用于在主題刪除前后嵌入自己的功能,此函數將在 deletethread() 中被調用 2 次,函數中 $_G['deletethreadtids'] 變量為待處理的 TID 數組
      全局嵌入點(diǎn)類(lèi)array(
      'param' => deletethread() 函數的參數數組,
      'step' => 刪除的步驟
      'check' 檢測步驟
      'delete' 刪除步驟
      )
      deletepost()deletepost() 函數執行時(shí)調用
      用于在帖子刪除前后嵌入自己的功能,此函數將在 deletepost() 中被調用 2 次,函數中 $_G['deletepostids'] 變量為待處理的 ID 數組
      全局嵌入點(diǎn)類(lèi)array(
      'param' => deletepost() 函數的參數數組,
      'step' => 刪除的步驟
      'check' 檢測步驟
      'delete' 刪除步驟
      )
      avatar()
      (X2.5 新增)
      avatar() 函數執行時(shí)調用
      用于在頭像調用時(shí)嵌入自己的功能,函數中 $_G['hookavatar'] 變量為新頭像返回值

      全局嵌入點(diǎn)類(lèi)array(
      'param' => avatar() 函數的參數數組
      )


      要查看所有的預定義嵌入點(diǎn),請打開(kāi) config/config_global.php 文件,將文件結尾添加的設計者模式值改成“2”,然后更新緩存即可。在頁(yè)面源碼中查找"<hook>"可搜索到嵌入點(diǎn)。(詳細內容可參閱的《插件嵌入點(diǎn)列表》)
      $_config['plugindeveloper'] = 2;
      預定義的嵌入點(diǎn)會(huì )在頁(yè)面預置好的位置輸出函數返回的內容。函數返回值類(lèi)型如果是 array 且是空值的,必須輸出一個(gè)空數組,如:

      return array();
      函數名并不限于以上列表,您可以自定義,只要符合以下規則,函數就會(huì )在適當的地方被調用。

      function CURMODULE_USERDEFINE[_output]()

      CURMODULE 指明了此函數在哪個(gè)模塊執行,可通過(guò)常量 CURMODULE 得到當前頁(yè)面的 CURMODULE 值。 USERDEFINE 可自定義,如果函數名以“_output”結尾則會(huì )在模板輸出前調用,否則會(huì )在模塊執行前調用。 如:attachment_test() 函數會(huì )在論壇的下載附件的時(shí)候執行。 “_output”結尾的函數的第一個(gè)參數為數組,含義為 array('template' => 要輸出的模板名, 'message' => showmessage 的文字) 如:以下函數將在登錄的時(shí)候輸出調試文字

      function logging_test_output($a) {
              print_r($a);
              print_r($_POST);
      }

      plugin_identifier 類(lèi)中的其它函數為了便于閱讀建議以“_”開(kāi)頭,如:
      <?php

      class plugin_sample {

              function _updatecache() {
                      ......
                      return ...;
              }

      }

      class plugin_sample_forum extends plugin_sample {

              function viewthread_posttop() {
                      ......
                      return ...;
              }

              ......

      }

      ?>

      最新評論

      相關(guān)推薦
      !jz_fbzt! !jz_lxwm! !jz_gfqqq!

      Powered by DaoQin! X3.4 © 2016-2063 Dao Qin & 道勤科技

      返回頂部
      色综合网站国产麻豆_国产在线精品福利尤物_两个人的视频全免费观看高清_日日干狠狠干