【原】discuz! 7.2 超详细代码解析(3)

本文解析了一个论坛网站中首页加载的具体流程。从初始化设置到不同视图的加载逻辑,包括经典视图(classics)和动态视图(feeds),以及如何根据不同的URL参数选择加载相应的视图。还介绍了当特定版块绑定域名时的处理方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2010年07月17日 星期六 02:11

由于某度众所周知的举动,让我搬离写了5年的渣度空间,准备把技术性的文章定在优快云了。这些都是文章备份。勿怪。。

鉴于最近有些抓取机器和抄袭者,把标题的【原】字都复制,我不得不声明:本文为 yukon12345原创,转载请注明出处http://blog.youkuaiyun.com/yukon12345


看完common.inc.php,先返回看看整个index.php。

define('BINDDOMAIN', 'index');
 //最开始的引入。打开这个文件继续研究
 require_once './include/common.inc.php';

 //$loadforum由上面的common.inc.php文件引入。
 //默认为空。当你给某版块绑定特定域名,并且页面就在此域名下时候不空。代表着此版块已经由forumdisplay.php被转向到了index.php.
 //还是不明白的话请去看/include/common.inc.php里面的解释
 if(!$loadforum) {
 //当$loadforum空时.表明不是转向而来的地址。
 if($indextype) {//indextype由缓存文件引入(forumdata/cache_settings.PHP)。默认为classic
 //op为url链接引入的。分别是首页的论坛版块classics和论坛动态feeds
 $op = empty($op) ? $indextype : $op;
 //$indexfile值只可能是2种:classics或feeds
 $indexfile = in_array($op, array('classics', 'feeds')) ? $op : 'classics';
 } else {
 $indexfile = 'classics';
 }

 if($indexfile == 'classics' || !empty($gid)) {
 //gid代表分区id号。即可以把几个版分为一个区。查看某个分区的所有版块
 require_once DISCUZ_ROOT.'./include/index_classics.inc.php';
 } elseif($indexfile == 'feeds') {
 //点击论坛动态时,显示论坛最新动态
 require_once DISCUZ_ROOT.'./include/index_feeds.inc.php';
 } else {

 showmessage('undefined_action');
 }
 } else {//当$loadforum不空。表明这是某版块转向而来的。
 //显示版块(帖子列表)
 require_once './forumdisplay.php';
 }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值