settheme php,基于Typecho的社区系统2

功能与数据都折腾清楚了,就想着开始具体实现了

首先要做的就是需要能够修改系统的路由。这个并没有费很大力气,直接百度搜到了一款路由编辑插件RoutesHelper,做了一点修改,然后就正式开动吧!!!

路由到组件

一开始添加的路由是:Helper::addRoute(array('name'=>'login','url'=>'/login','widget'=>'Widget_Login','action'=>'render'))

并新建了文件Widget_Loginclass Widget_Login extends Widget_Abstract_Users{

public function render(){

//todo

require_once $this->_themeDir.'user/login.php';//引入模版文件

}

public function need($fileName){

require $this->_themeDir.$fileName;//引入模版文件

}

}

这样就可以把做好的模版文件加载并显示

然后是注册功能,又得新建一个Widget_Register文件,类似的函数又要写一遍……

但是仔细看Archive.php文件发现完全不需要新建文件,直接把路由指向Widget_Archive即可:Helper::addRoute(array('name'=>'login','url'=>'/login','widget'=>'Widget_Archive','action'=>'render'))

然后在Widget_Archive组件中的execute函数添加相应的handles,execute会根据handles的设置执行对应的函数:$handles = array(

//默认设置

'login'=>'loginHandle',

…… //其他自定义路由

)

根据定义的hangles写出处理函数:private function loginHandle(Typecho_Db_Query $select, &$hasPushed){

$hasPushed = true; //是否已经取得了数据,这里因为不需要再获取数据,所以设置为true

$this->setArchiveType($this->parameter->type);

$this->setMetaTitle('登录');

$this->setThemeFile('user/login.php');

}

…… //其他的函数

这样一来的话,很快就能够看到功能的基础页面

未完待续……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值