一、准备文件
假设我们需要在(frontend)PC前台增加一个“关于我们”的页面,我们定义控制器名为company,操作方法名为about,那么我们需要在
@shopwind\frontend\home\controllers文件夹下编写一个PHP文件CompanyControler.php,基础代码如下:
namespace frontend\home\controllers;
use Yii;
class CompanyController extends \common\base\BaseMallController
{
public function init() {
parent::init();
}
}
这里我们实现了一个init方法,目的就是调用控制器父类BaseMallController进行页面的初始化操作(这个父类执行了什么东西,大家可以先不用理会太多,等后面慢慢了解系统后再去研读,对控制器父类的介绍,可以参考控制器介绍)。接下来,我们就来实现About方法,代码如下(请注意:方法名首字母必须大写
并且跟着保留字action)
namespace frontend\home\controllers;
use Yii;
class CompanyController extends \common\base\BaseMallController
{
public function init() {
parent::init();
}
public function actionAbout() {
echo "ShopWind是一款开源的B2B2C电商系统..."
}
}
二、浏览页面
我们打开浏览器输入地址http://localhost/company/about.html即可显示我们的页面。这里我们使用的是本地地址(域名解析到public目录)
三、编写后台页面
编写(backend)后台页面其实跟编写(frontend)前台页面其实流程是一样的,代码也几近相同,最大的区别就是文件存放的路径不同。
如果需要编写后台页面,我们需要在后台控制器目录@shopwind\backend\controllers下新增控制器文件CompanyControler.php,
为了方便区别,我们继续使用“关于我们”作为例子代码:
namespace backend\controllers;
use Yii;
class CompanyController extends \common\base\BaseAdminController
{
public function init() {
parent::init();
}
public function actionAbout() {
echo "ShopWind是一款开源的B2B2C电商系统..."
}
}
该页面的访问路径为http://localhost/admin/company/about.html。从代码可以看到,我们只修改了两处地方,一个是命名空间,一个是继承类,非常简单就能够
实现了一个后台页面的简单输出,代码跟前台页面几乎完全一致。
同理,我们编写PC前端页面的时候,也仅需要简单修改一两处代码就能实现,控制器位于@shopwind\controllers\home下,大家可以参考项目源码进行理解,
这里不再举例说明。