/********************************************************************************/
/* Crossday Discuz! Board */
/* ======================== */
/* 歡迎使用 Discuz! 論壇,在您開始使用之前,請務必完整閱讀本軟件附帶的全部說明檔 */
/********************************************************************************/
/* Welcome to http://www.crossday.com & http://www.Discuz.net */
/********************************************************************************/
=== Discuz! 插件開發說明 ===
Discuz! 採用標準的開發方式,為外掛插件提供了一系列完善的支持,無論插件如何設計,
數據結構如何,都不會影響到 Discuz! 自身的使用.
儘管如此,我們仍建議你在開發插件的同時遵循以下原則:
為了保證程序界面一致性,添加附件鏈接(包括前台和後台)請盡量在 config.php 中設置,
方法見後.
您可以修改Discuz!本身的數據結構,但更推薦在不很影響效率的前提下將數據用另外的表
存儲,因為不能排除您增加的字段和今後版本 Discuz! 衝突的可能(如重名)
如果功能獨立,請使用單獨的程序文件名而不要在 Discuz! 程序本身修改,這將給今後升級
帶來很大的方便.使用單獨程序時,請包含 Discuz! 通用初始化模塊 ./include/common.php,
以便共享登錄,權限等用戶狀態信息.
config.php 提供的插件接口:
// ==================Discuz!插件,配置和使用方法詳情請參考 faq.txt =============
$plugins[] = array
(
'name' => 'Test PlugIn',
'script' => 'my_plugin.php',
'url' => 'http://localhost/testplugin',
'cpurl' => 'http://localhost',
'tables' => array('table1', 'table2')
);
// ============================================================================
您可以在以上部位加入如上所示的數組 $plugins 即可實現插件接口.
name 為插件的名字;script 為插件需要插入的程序名稱,如果不需要插入程序段,請留空;
url 為插件在前台的 URL,cpurl 為插件在後台的接口 URL.如果插件不需要後台,設置 cpurl
為空即可,tables 為該插件所新增的數據表,目的在於使用完全備份和標準備份時會將插件的
新增表內容同時備份,如不需要備份或沒有新增數據表,此處可以留空.
需要注意,tables 參數必須為數組變量,若包含多個數據表,請將多個表名表示為數組元素.
另外表名中切勿包含表名前綴,如包含前綴的表名為 cdb_plugs(前綴 cdb_),插件配置中需使用
'plugs' 作表名.
我們為插件程序預留了一個擴展積分字段,即 members 表中的 extracreit,為整型有符號數.
您可以使用該字段用於插件程序的寫作,如擴展為金錢,威望等.
插件程序必須放在論壇中的 plugins 目錄中,否則會出現錯誤.
Crossday Studio, 2003-5-30 13:30
http://www.Discuz.net
http://www.crossday.com
               (
geocities.com/hk)