目录 |
文件介绍 |
admin/ |
管理后台 |
api/ |
API函数[插件开发与模板等的修改不需要动此文件] |
attachment/ |
附件目录 |
data/ |
缓存目录,此目录要有777权限,系统相关缓存基本上都在这里了 |
data/tpl_cache/ |
模板缓存目录,注意,如果你的UCH白屏了,无法进入后台跟新缓存,通过FTP手工删除此目录下的所有文件即可相当于模板缓存的更新 |
image/ |
图片目录 |
language/ |
语言目录 ,跳转提示语言等 |
source/ |
PHP源程序目录,类文件,分步处理文件 |
template/ |
模板目录 |
theme/ |
个人主页目录 |
uc_client/ucenter |
客户端 [插件开发与模板等的修改不需要动此文件] |
Install/ |
安装时用到,安装完毕建议删除 |
common.php |
通用文件,所有的文件都要包含这个文件 |
config.php |
基本配置文件 定义了$_SC数组和ucenter通讯的常量 |
editor.php |
编辑器的入口文件,强烈建议您不用动他 |
network.php |
随便看看等入口文件 调用source文件夹下的 network.php文件 |
文件入口 |
文件详细动作 |
admincp.php?ac=*
后台管理入口文件 调用admin文件夹下的php文件 |
│ ├─admincp_ad.php 广告设置 │ ├─admincp_album.php 相册 │ ├─admincp_app.php UCenter应用 │ ├─admincp_backup.php 数据备份 │ ├─admincp_block.php 数据调用 │ ├─admincp_blog.php 日志 │ ├─admincp_cache.php 缓存更新 │ ├─admincp_censor.php 词语屏蔽 │ ├─admincp_click.php 表态动作 │ ├─admincp_comment.php 评论/留言 │ ├─admincp_config.php 站点设置 │ ├─admincp_credit.php 积分规则 │ ├─admincp_cron.php 系统计划任务 │ ├─admincp_doing.php 记录 │ ├─admincp_event.php 活动 │ ├─admincp_eventclass.php 活动分类 │ ├─admincp_feed.php 动态(feed) │ ├─admincp_hotuser.php 推荐成员设置 默认好友设置 │ ├─admincp_index.php 管理首页 │ ├─admincp_ip.php 访问IP设置 │ ├─admincp_log.php 系统log记录 │ ├─admincp_magic.php 道具设置 │ ├─admincp_magiclog.php 道具记录 │ ├─admincp_mtag.php 群组 │ ├─admincp_network.php 随便看看 │ ├─admincp_pic.php 图片 │ ├─admincp_poll.php 投票 │ ├─admincp_post.php 回帖 │ ├─admincp_privacy.php 隐私设置 │ ├─admincp_profield.php 群组栏目 │ ├─admincp_profilefield.php 用户栏目 │ ├─admincp_report.php 举报 │ ├─admincp_share.php 分享 │ ├─admincp_space.php 用户管理 │ ├─admincp_spam.php 防灌水设置 │ ├─admincp_stat.php 统计更新 │ ├─admincp_tag.php 标签 │ ├─admincp_task.php 有奖任务 │ ├─admincp_thread.php 话题 │ ├─admincp_userapp.php MYOP应用 │ ├─admincp_usergroup.php 用户组 |
cp.php?ac=* 编辑日志、相册、活动等等相关编辑操作基本上都从这个文件入口
调用source文件夹下的操作文件 |
│ ├─cp_advance.php 高级管理 │ ├─cp_album.php 相册管理 │ ├─cp_avatar.php 我的头像 │ ├─cp_blog.php 日志管理 包含日志的编辑删除等信息 │ ├─cp_class.php 日志分类管理 │ ├─cp_click.php 表态动作的处理 │ ├─cp_comment.php 评论的操作 │ ├─cp_common.php 举报违规,在好友的面板上,还有屏蔽通知 │ ├─cp_credit.php 我的积分 │ ├─cp_doing.php 删除记录,回复spacenote │ ├─cp_domain.php │ ├─cp_event.php 事件管理,活动管理 │ ├─cp_feed.php │ ├─cp_friend.php 好友管理 │ ├─cp_import.php 日志导入 │ ├─cp_invite.php 邀请好友 │ ├─cp_magic.php 道具的赠送购买 │ ├─cp_mtag.php 群组 │ ├─cp_password.php 修改密码 │ ├─cp_pm.php 短消息操作 │ ├─cp_poke.php 打招呼 │ ├─cp_poll.php 投票 │ ├─cp_privacy.php 隐私筛选 │ ├─cp_profile.php 个人资料 │ ├─cp_relatekw.php │ ├─cp_sendmail.php 发送邮件 │ ├─cp_share.php 分享 │ ├─cp_space.php 应用隐藏 │ ├─cp_task.php 任务 │ ├─cp_theme.php 个性化设置 │ ├─cp_thread.php 群组处理 │ ├─cp_top.php │ ├─cp_topic.php │ ├─cp_upload.php │ ├─cp_userapp.php │ ├─cp_videophoto.php |
do.php?ac=* 登录、注册、找回密码、相册批量上传、在需要密码的情况下才能查看日志相册、验证码、发送邮件、统计、邮件验证等行为的入口文件 调用source文件夹下的操作文件 |
│ ├─do_ajax.php │ ├─do_emailcheck.php │ ├─do_inputpwd.php │ ├─do_login.php 登陆 │ ├─do_lostpasswd.php 找回密码 │ ├─do_register.php 注册 │ ├─do_seccode.php │ ├─do_sendmail.php │ ├─do_stat.php │ ├─do_swfupload.php |
magic.php?mid=* 道具入口文件 调用source文件夹下的操作文件 |
│ ├─magic_anonymous.php │ ├─magic_attachsize.php │ ├─magic_bgimage.php │ ├─magic_call.php │ ├─magic_color.php │ ├─magic_detector.php │ ├─magic_doodle.php │ ├─magic_downdateline.php │ ├─magic_flicker.php │ ├─magic_frame.php │ ├─magic_friendnum.php │ ├─magic_gift.php │ ├─magic_hot.php │ ├─magic_icon.php │ ├─magic_invisible.php │ ├─magic_reveal.php │ ├─magic_superstar.php │ ├─magic_thunder.php │ ├─magic_updateline.php │ ├─magic_viewmagic.php │ ├─magic_viewmagiclog.php │ ├─magic_viewvisitor.php │ ├─magic_visit.php |
space.php?do=*
个人空间、日志、相册、活动等入口文件
调用source文件夹下的相关文件 |
│ ├─space_album.php │ ├─space_blog.php │ ├─space_doing.php │ ├─space_event.php │ ├─space_feed.php │ ├─space_friend.php │ ├─space_index.php │ ├─space_info.php │ ├─space_mood.php │ ├─space_mtag.php │ ├─space_notice.php │ ├─space_pm.php │ ├─space_poll.php │ ├─space_share.php │ ├─space_tag.php │ ├─space_thread.php │ ├─space_top.php │ ├─space_topic.php │ ├─space_videophoto.php │ ├─space_wall.php |
我们一般修改UCH主要涉及的入口文件有space.php network.php do.php cp.php这四个,那么我们如何根据你访问的URL判断涉及到那些PHP文件和模板文件,方便您的进一步修改!
举个例子,如果我们使用找回密码功能,通常链接如下:do.php?ac=lostpasswd,而注册的链接一般分两种,一种是do.php?ac=后台自定义登录识别名
另一种是do.php?ac=随机
好了,我们进入do.php文件中继续看看:
//这个是公用文件,在上篇已详细解释了内容 include_once(’./common.php’); //获取方法 获取do.php?ac中ac的值 $ac = empty($_GET['ac'])?”:$_GET['ac']; //自定义登录 if($ac == $_SCONFIG['login_action']) { //这里的全局变量$_SCONFIG['login_action']就是ac=自定义标示名或那个随机串,如果相同则把原来的do.php?ac=XXXX抓换成类似效果do.php?ac=login $ac = ‘login’; } elseif($ac == ‘login’) { ac = ‘’; } if($ac == $_SCONFIG['register_action']) { //这里的全局变量$_SCONFIG['register_action'] //就是ac=就是后面的自定义标示名或那个随机串,如果相同则把原来的do.php?ac=XXXX抓换成类似效果do.php?ac=register $ac = ‘register’; } elseif($ac == ‘register’) { $ac = ”; } //允许的方法 //这里很重要,login对应的是登录,register定义的是注册,lostpasswd定义的是找回密码,与上面访问的URL是否是对应上了 //对应上面的do.php?ac=login,do.php?ac=register,do.php?ac=lostpasswd,其他类似!如果ac后的参数不在下面的数组中,则为非法。跳转到首页 $acs = array(’login’, ‘register’, ‘lostpasswd’, ’swfupload’, ‘inputpwd’,‘ajax’, ’seccode’, ’sendmail’, ’stat’, ‘emailcheck’); if(empty($ac) || !in_array($ac, $acs)) { showmessage(’enter_the_space’, ‘index.php’, 0); } //链接 $theurl = ‘do.php?ac=’.$ac; //这是包含文件的意思,继续执行一下文件的意思, //其中S_ROOT是UCHOME安装目录的常量 //根据下面的语句,我们可以这样判断,如果链接是do.php?ac=lostpasswd的话,程序继续执行source/do_lostpasswd.php文件! include_once(S_ROOT.’./source/do_’.$ac.’.php’);
不知道大家是否能理解,不理解多看几遍!
好了,我们找到source/do_lostpasswd.php文件看下,这个文件代码较多,我们不用管他,最主要的是我们要找到其对应的模板,
查找下include template这个语句【注:在其他php文件中可能有多个结果,那是因为不同条件下包含不同的模板】。你就会发现在末尾找到
include template(’do_lostpasswd’);
这就是模板名,这个记住规则,do_lostpasswd对应的模板是do_lostpasswd.htm名。那么这个文件在哪个位置呢?
我们系统目录template/下有 默认的default,blue,green这三个文件夹,对应不同的风格,如果你安装了其他风格,可能还有其他目录。
系统是如何查找do_lostpasswd.htm呢?
大家记得在后台有一个模板选择的下拉表吗?系统会在你选择的模板风格文件夹下查找do_lostpasswd.htm,如果找不到则在去default目录下查找。
注意: 为了提供效率,模板并不是每次都编译的,严格的来说,UCHOME会先判断对应的模板是否被解析过了【查找data/tpl_cache/目录下是否有对应的模板缓存】
如果没有的话才会去按上面的规则去查找。
基本上,按照以上思路就可以根据链接找到匹配的程序文件和模板文件了
所有章节下载:http://download.csdn.net/source/3579636
文章摘自:http://wenku.baidu.com/view/ffd8a5c14028915f804dc2e0.html