discuz中的forum.php入口文件详解
- 格式:doc
- 大小:31.50 KB
- 文档页数:2
/**
* [Discuz!] (C)2001-2099 Comsenz Inc.
* This is NOT a freeware, use is subject to license terms
*
* $Id: forum.php 31999 2012-10-30 07:19:49Z cnteacher $
*/
define('APPTYPEID', 2);
define('CURSCRIPT', 'forum');
//定义应用ID
require './source/class/class_core.php';
//基础文件引入,其他文件根据需要引入
require './source/function/function_forum.php';
$modarray = array('ajax','announcement','attachment','forumdisplay',
'group','image','index','medal','misc','modcp','notice','post','redirect',
'relatekw','relatethread','rss','topicadmin','trade','viewthread','tag','collection','guide'
);
//模块定义以及缓存模块定义
$modcachelist = array(
'index' => array('announcements', 'onlinelist', 'forumlinks',
'heats', 'historyposts', 'onlinerecord', 'userstats', 'diytemplatenameforum'), 'forumdisplay' => array('smilies', 'announcements_forum', 'globalstick', 'forums',
'onlinelist', 'forumstick', 'threadtable_info', 'threadtableids', 'stamps', 'diytemplatenameforum'),
'viewthread' => array('smilies', 'smileytypes', 'forums', 'usergroups',
'stamps', 'bbcodes', 'smilies', 'custominfo', 'groupicon', 'stamps',
'threadtableids', 'threadtable_info', 'posttable_info', 'diytemplatenameforum'), 'redirect' => array('threadtableids', 'threadtable_info', 'posttable_info'),
'post' => array('bbcodes_display', 'bbcodes', 'smileycodes', 'smilies', 'smileytypes', 'domainwhitelist', 'albumcategory'),
'space' => array('fields_required', 'fields_optional', 'custominfo'),
'group' => array('grouptype', 'diytemplatenamegroup'),
);
$mod = !in_array(C::app()->var['mod'], $modarray) ? 'index' : C::app()->var['mod'];
//判断mod的合法性
define('CURMODULE', $mod);//定义常量、论坛以及模板解析时需要
$cachelist = array();//依据CURMODULE或mod设定需要加载的缓存
if(isset($modcachelist[CURMODULE])) {
$cachelist = $modcachelist[CURMODULE];
$cachelist[] = 'plugin';
$cachelist[] = 'pluginlanguage_system';
}
if(C::app()->var['mod'] == 'group') {
$_G['basescript'] = 'group';
}
C::app()->cachelist = $cachelist;
C::app()->init();
/*
$discuz->cachelist=$cachelist;
$discuz->init();
//核心处理
*/
loadforum();
set_rssauth();
runhooks();
//针对论坛功能的公共过程
$navtitle = str_replace('{bbname}', $_G['setting']['bbname'], $_G['setting']['seotitle']['forum']);
require DISCUZ_ROOT.'./source/module/forum/forum_'.$mod.'.php';
//加载mod
?>