JDP 發表於 2007-11-6 13:54:03

Discuz 程序文件目錄含義整理表

Discuz程序文件目錄含義整理表

最近看見很多人熱衷於功能增強型HACK的修改。這種功能增強型HACK和平時所說的插件不一樣,插件是單獨的文件,一般在後台導入即可使用。但是功能增強型HACK更多是修改程序源代碼來實現自己需要的功能,本人做得最多就是這類。可以說功能增強型HACK是插件的前身,想做插件就一定要做熟功能增強型HACK。
功能增強型HACK挺簡單,因為代碼修改量不多,而且一般以改代碼為主;說難,因為一般不好找文件,而且一旦對程序結構不熟悉,馬上陷入迷坑。

這裡先簡單說下Discuz!的所有文件,目前所代表的含義,方便大家修改時候避免找不到改哪個文件。這是個基本功,一定要熟練~熟悉了文件的話,隨便做個功能增強型HACK根本就是不費吹灰之力的事情。

先說根文件:
admincp.php——後台系統設置程序文件,一般只處理菜單的顯示的訪問權限,不處理管理控制。
attachment——附件文件,僅僅處理附件下載的功能。
announcement.php——論壇公告的顯示,一般很少改
blog.php——瀏覽BLOG文章時候會用的,非常容易理解
config.inc.php——配置論壇數據庫、密碼等信息,這個大家最熟悉了
digest.php——論壇精華區的信息顯示,不用多說了吧?
discuz_version.php——論壇版本信息,用來更新用的,沒有官方說明絕對不要修改
faq.php——論壇幫助系統,不過我看絕對沒人用
forumdisplay.php——很簡單,論壇主題列表的顯示
index.php——控制首頁元素顯示
logging.php——登陸系統,判斷用戶名、密碼。
mail_config.inc.php——配置論壇EMAIL功能\r
member.php——控制會員列表顯示,積分策略等等信息顯示
memcp.php——會員控制面板
misc.php——控制評分功能、BLOG、論壇界面顯示功能等等\r
plugin.php——論壇插件,這個主要控制論壇插件的菜單的顯示,一般極少修改
pm.php——論壇短信息程序,控制短信息發表與瀏覽
post.php——與viewthread.php相似,但是更多是管理帖子發表、編輯等等信息,也會有權限的控制提示
redirect.php——控制顯示論壇的最後發表的主題訪問
register.php——註冊文件,同時也會控制註冊的信息的合法性
rss.php——RSS快速訂閱,不用多說了吧?
search.php——處理論壇搜索功能中的信息篩選
seccode.php——論壇註冊,生成驗證碼的程序
stats.php——處理統計中的統計信息
topic.php——一般無法直接訪問,控制頁面顯示,顯示主題條數
topicadmin.php——控制的是管理人員的前台管理操作,如精華、置頂、高亮等等
viewpro.php——處理瀏覽會員信息的內容顯示
viewthread.php——處理瀏覽帖子時候的帖子信息顯示,例如信息、標題等等,同時也處理訪問帖子的權限,如閱讀權限是否足夠等等。

接著開始說文件夾裡面的文件了,一個個開始:
有人會問,那個空index.htm是干什麼用的,我可以回覆,那是防止列目錄查看文件用的,避免安全問題。
admin=== (管理後台的程序文件,全部在這裡,僅能通過admincp.php來訪問)
標記紅色的文件最好別動,畢竟主程序被加密,而且也是違背官方授權協議的。      
home.inc.php——後台首頁內容
settings.inc.php——Discuz!選項下的所有小分類
passport.inc.php——一堆通行證的東西
avatarshow.inc.php——天下秀
qihoo.inc.php——奇虎搜索
forums.inc.php——論壇編輯下面所有子分類
members.inc.php——添加用戶、編輯用戶、合併用戶、用戶欄目定制
groups.inc.php——分組與級別下所有子分類
announcements.inc.php——只有論壇公告發佈的管理
styles.inc.php——風格管理
templates.inc.php——模板在線編輯
moderate.inc.php——一堆審核,審核新用戶、審核新主題、審核新回覆
recyclebin.inc.php——單獨的回收站程序
ecommerce.inc.php——支付寶,不過最好別動
misc.inc.php——勳章編輯、在線列表定製、聯盟論壇、計劃任務、Discuz! 代碼、詞語過濾、Smilies 編輯、附件類型尺寸、積分交易記錄,管理得真多,甚至連後台的退出功能也歸這個文件管。
advertisements.inc.php——廣告管理
database.inc.php——資料備份、資料恢復、數據庫升級、數據表優化
attachments.inc.php——編輯附件,只有一個
counter.inc.php——更新論壇統計
threads.inc.php——批量主題管理
prune.inc.php——批量刪帖、清理短消息
plugins.inc.php——插件設置、插件管理
logs.inc.php——運行記錄,除了積分交易記錄以外的所有記錄
tools.inc.php——管理更新緩存、JS 調用嚮導、文件權限檢查
menu.inc.php——後台左邊那個好長的導航菜單就是了

Api目錄的文件是全部被加密過的,無法修改也不能修改,詳情見官方授權協議。

archiver==(特別說明下,因為archiver中的目錄的文件沒有調用commom.inc.php,所以所有變量、函數都不能直接使用,必須要搜索數據庫來進行判斷)
    index.php archiver首頁
    include==
      thread.inc.php archiver主題顯示
      index.inc.php 這個是過濾論壇權限和界面顯示用的
      header.inc.php archiver風格控制
      forum.inc.php archiver論壇顯示

attachments是論壇附件的存放目錄

customavatars是論壇頭像的存放目錄

forumdata是論壇記錄和緩存文件的存放目錄,一般這些文件都是自動生成的,所以不要修改。至於有什麼用途也說下吧。
    cache==(很好用的功能,調用的這裡的文件變量是非常快的)
       admingroup_X.php 管理組權限
       cache_bbcodes.php BBCODE和SMILES
       cache_blog.php 所有用戶組的權限變量和smilies、bbcode,還有發帖數等級的信息
       cache_censor.php 屏蔽信息
       cache_crons.php 計劃任務
       cache_forumdisplay.php 論壇信息與公告
       cache_forums.php 同上
       cache_index.php 在線列表、聯盟論壇、公告
       cache_ipbanned.php 封IP段記錄
       cache_medals.php 勳章信息
       cache_post.php smilies、bbcode、icons
       cache_profilefields.php 暫時不清楚
       cache_settings.php setting表設置的參數變量
       cache_viewthread.php 論壇,用戶組,smilies、bbcode、icons
       plugin_XX.php 插件表
       style_XX.php 風格緩存
       usergroup_XX.php 用戶組緩存
    templates==(升成的模板PHP,比較少做插件會用到,忽略)
根部的一些LOG文件就是後台記錄文件了。

images是圖片目錄,忽略過~

include是論壇核心程序目錄,非常有必要去瞭解。
    crons==(這裡是計劃任務文件,你可以增加自己的計劃任務,而且可以調用系統變量)
    tables==(幾個語言文件,很少改,跳過)
serverbusy.htm 系統錯誤信息
bbcode.js Discuz!代碼JS效果文件
common.js 主要是DZ常用的模板函數文件,可以直接用
floatadv.js 廣告用的
qihoo.js 奇虎的文件,不改
threadpay.inc.php 出售帖
template.func.php 控制模板緩存生成的文件
sendmail.inc.php 發送EMAIL的程序
security.inc.php 好像是代理一類的,不管
relatethreads.inc.php 應該說是生成相關主題的程序
promotion.inc.php 記錄當前用戶的IP等信息
printable.inc.php 打印主題用的程序
post.func.php 不錯的函數文件,主要是記錄信息、更新帖子的函數
pmprompt.inc.php 短信息內容處理
newthread.inc.php 發新話題的信息處理
newreply.inc.php 發回覆的信息處理
misc.func.php 又是函數文件,控制管理PM,評分PM,評分記錄,附件高亮顯示,IP轉換為地理位置
global.func.php 豐富的函數庫,都是前台用的,如除去HTML、發PM、發EMAIL等等,建議大家研究下。
forum.func.php 處理論壇信息用的函數,如論壇菜單下拉等等
editpost.inc.php 編輯帖子的信息處理
discuzcode.func.php Discuz!代碼轉換處理程序
db_mysql_error.inc.php 數據庫錯誤匯報
db_mysql.class.php 數據庫中心操作程序
cron.func.php 控制計劃任務執行的程序
counter.inc.php 記錄操作系統與瀏覽器的統計
common.inc.php 最重要的核心程序,讀取COOKIES信息,定義全局系統函數變量
chinese.class.php 處理亂碼和字符集用的
category.inc.php 控制帖數,今日發帖數的統計
cache.func.php 控制生成緩存文件的程序
blog.func.php 在BLOG發帖時信息處理會用到
attachment.func.php 識別附件拓展名,控制附件前面顯示類別圖片的程序, 還有附件大小的記錄判斷
advertisements.inc.php 處理廣告顯示用的

ipdata==(IP庫文件目錄,下面那個wry.dat就是IP庫,這個我不會改)

plugins==(插件存放目錄)

templates==(模板目錄,一般做HACK也要改模板,因此說明下)
default==(默認模板,從這個開始,其它風格以此類推)
announcement.htm 公告
blog.htm BLOG首頁
blog_addremove.htm 移除添加BLOG
blog_list.htm BLOG列表
blog_topic.htm BLOG中主題顯示
credits.htm 積分策略
css.htm 做風格用的,不過我不懂
customtopics.htm 首頁那個用戶專題
digest.htm 精華區主題
emailfriend.htm EMAIL推薦主題
faq.htm FAQ幫助手冊,下面都是,只不過顯示部分不一樣,省略。
footer.htm 論壇底部信息
forumdisplay.htm 論壇主題列表
forumdisplay_subforum.htm 二級論壇列表
getpasswd.htm 取回密碼
groupexpiry.htm 公眾用戶組
header.htm 頭部連接
index.htm 首頁
login.htm 登錄頁面
login_secques.htm 登錄時安全提問
lostpasswd.htm 取回密碼
memberlist.htm 會員列表,上面那個
memcp_credits.htm 控制面板——積分交易
memcp_home.htm 控制面板——首頁
memcp_misc.htm 控制面板——好友列表、訂閱列表、收藏夾
memcp_navbar.htm 控制面板——上面那個菜單條
memcp_profile.htm 控制面板——編輯個人資料
memcp_usergroups.htm 控制面板——公眾用戶組
nopermission.htm 關閉論壇顯示的提示頁
pay.htm 買帖子
pay_view.htm 看帖子被誰買了
pm.htm 短信息左邊菜單條
pm_archive.htm 導出短消息
pm_archive_html.htm 導出短消息HTML
pm_folder.htm 好像就是列表而已
pm_ignore.htm 忽略列表
pm_search.htm 搜索短消息
pm_search_result.htm搜索短消息結果
pm_send.htm發送短消息
pm_view.htm 瀏覽短信息,內容更詳細
pmprompt.htm 首頁新短信提示
post_attachments.htm 發帖子的附件模塊
post_bbinsert.htm 一堆BBCODE
post_editpost.htm 編輯帖子
post_newreply.htm 回覆主題
post_newthread.htm 發新話題
post_preview.htm 主題回顧
post_seccode.htm 驗證碼
post_smilies.htm SMILES
post_sminsert.htm 快速發帖欄
rate.htm 評分
rate_view.htm 評分記錄瀏覽
register.htm 註冊
reportpost.htm 主題報告
search.htm 搜索主頁
search_blog.htm 搜索BLOG列表
search_threads.htm 搜索後的帖子列表
showmessage.htm 系統返回錯誤信息那個
stats_main.htm 統計首頁
stats_misc.htm 管理統計、時間、積分等等一堆
stats_navbar.htm 統計上面那個菜單條
stats_onlinetime.htm 時間統計
stats_team.htm 管理團隊
topic.htm 又是QIHOO的隨機廣告
topicadmin_bump.htm 提升主題
topicadmin_delpost.htm 刪除主題
topicadmin_getip.htm 查看IP
topicadmin_merge.htm 合併主題
topicadmin_moderate.htm 高亮、置頂、精華一堆~
topicadmin_move.htm 移動主題
topicadmin_reason.htm 管理理由填寫
topicadmin_refund.htm 強制退款
topicadmin_split.htm 分割主題
topicadmin_stick.htm 置頂
viewpro.htm 會員詳細信息查看
viewthread.htm 瀏覽帖子
viewthread_mod.htm 帖子管理記錄
viewthread_pay.htm 帖子支付頁面
viewthread_poll.htm 投票框
viewthread_printable.htm 打印主題
whosonline.htm 詳細的在線動作
actions.lang.php動作語言包
admincp.lang.php 後台語言包
archiver.lang.php archiver語言包
customfaq.lang.php FAQ手冊的語言包
emails.lang.php 一堆EMAIL信息
messages.lang.php 錯誤信息語言包
misc.lang.php 像最後編輯,由誰管理等等
modactions.lang.php 管理代號
pms.lang.php PM,都是管理理由
templates.lang.php 前台模板的語言包
wap.lang.php wap用的語言包

wap==(WAP支持程序,一般很少改,忽略)

相信看了上面的表來熟悉文件作用,找相應的文件進行修改,做一個功能增強型HACK不是難事。:)

Reference: http://discuz.bluelovers.net/thread-712-1.html#pid886
頁: [1]
查看完整版本: Discuz 程序文件目錄含義整理表