首頁
出自Discuz! 技術文庫
目錄 |
歡迎來到 Discuz! 技術文庫
- Discuz! 由騰訊旗下的 Comsenz 出品,是一款使用PHP編寫,以MySQL作數據存儲的社區建站產品。建站者通過安裝使用Discuz!,可以快捷搭建一個具備論壇、門戶、家園、群組等多功能模塊的社區平臺。
Discuz! 已經有10年的研發歷史。憑借其自身優秀并簡潔的系統架構,完善的插件平臺和第三方產品開放機制,吸引了眾多PHP愛好者進行相關功能的拓展和研發。
為了幫助PHP愛好者了解Discuz!的原理,更好的使用Discuz!、完善Discuz!,我們Discuz!研發團隊整理并維護了此技術文庫,如果您有意見及建議,歡迎與我們聯系。
此技術文庫的編寫,以最新版本的 Discuz! X2.0 為標準。
閱讀 Discuz! 的編碼規范
- 閱讀編碼規范
開發一個優秀的產品,需要有追求完美、嚴謹、高效的態度。在開始了解 Discuz! 的技術之前,我們有必要先閱讀一下 Discuz! 的編碼規范。
本編碼規范,僅適用于對 Discuz! 研發。
了解 Discuz! 的技術
基礎框架、類、函數
- 下面的文檔,為Discuz! 目錄結構說明、數據庫字典和一些涉及二次開發的通用性類和函數做了簡要的注釋說明。
如果你想使用Discuz!的架構進行二次開發,對這些基礎通用的類、函數進行了解和掌握,是必須進行的一步。
模板機制
- 在編寫Discuz!可用的模板之前,您應當對模板的創建流程有一個大致了解。
你可以參考下面的流程進行創建。下面的文檔,通過對模板的解析流程,緩存生成,以及模板語法和CSS緩存等多角度進行剖析,并通過簡單示例的方式揭示整個流程的來龍去脈。
插件機制
- Discuz! 擁有一套完整的插件機制。
合理使用插件機制,你可以更好的將自己的個性功能需求整合到Discuz!產品中的同時,保持代碼獨立,并且不受后續Discuz!產品版本升級的影響。
我們鼓勵并推薦,使用插件機制進行個性需求定制和研發。
DIY拖拽模塊拓展
- 第三方DIY模塊拓展類的開發
通過使用Discuz! 的DIY模塊開發接口,第三方產品可以將數據吞吐到Discuz!產品的任何頁面,并支持隨意拖拽和定期更新。 - DIY模塊模板語法詳解
- 模板中添加DIY可拖拽區域
- 第三方DIY模塊拓展類的開發
后臺整合
- 通過學習后臺的編寫流程,你可以實現基于Discuz!后臺安全策略和登錄策略來實現整合式的開發
下面文檔重點講解常用重要后臺函數的常規使用
UCenter
- Discuz! 的用戶數據全部存儲在 UCenter 中,并可以使用 UCenter 的接口體系與第三方產品進行掛接。因此,了解 UCenter 也是了解 Discuz! 產品體系的重要一步。
Discuz! X2.5新版架構優化說明
讓 Discuz! 更加高效和安全
- 緩存機制簡單的說就是將一些重復操作的結果集保存下來,在收到同樣的操作時直接從緩存的結果集中取出相應的數據直接使用,這樣做的好處是降低重復性的解析或者SQL查詢之類的動作,從而有效的緩解服務器的壓力。
- 在編碼規范中提到數據庫的設計方法中包括性能與效率的前提下,做相應的SQL優化。在整個產品中,有時候不能忽略一些細小的優化,當出現過多未優化的細節時,也能帶來致命的負載問題。
- 在Discuz!X中對于安全方面引入了新的機制,其中包括SQL檢查、以及限制訪問之類的限制。
動手吧,用Discuz!的基礎框架,編寫自己的程序
- 基于Discuz!X的心情墻
通過一個簡單心情墻的編寫過程,可以讓你更清晰的了解,如何利用Discuz!的基礎框架,來編寫一個基于Discuz!的心情墻。
加入 Discuz! 應用中心,向廣大站長展示自己的作品
- Discuz! 應用中心是康盛為廣大開發者提供的展示、銷售自己應用作品的平臺,開發者可以將自己插件、模板、擴展提交到應用中心平臺上發布,站長可直接通過 Discuz! 應用中心客戶端(Discuz! X2.5 起將內置)在線購買、安裝應用,實現應用的一鍵安裝。
- 注冊成為 Discuz! 應用中心開發者行列
加入我們
- 如果你喜歡 Discuz!,有能力動手改造 Discuz!,有興趣讓全球幾十萬使用 Discuz! 的站點來點你親手制造的新玩意?那么,加入我們吧。
意見及建議
- 如果您對目前使用中的插件開發接口有爭議,或者對未來的版本有新的需求,以及在插件開發過程中遇到的不便,歡迎提出您的寶貴意見和建議,請與我聯系。