PbootCMS二開教程(一)新增左側菜單與頁面
第一步:后臺進入【菜單管理】
路徑(http://您的域名/admin.php?p=/Menu/index)
進入后選擇【菜單新增】
名詞解釋:
【父菜單】如果是頂級菜單,無需切換,如果需要放到哪個分類下,選擇對應分類即可
【菜單名稱】設置菜單在后臺顯示的名稱
【URL】即后臺菜單的路徑
【快捷圖標】可以到Font Awesome 中文網選擇自己喜歡的圖標(http://www.fontawesome.com.cn/icons/area-chart/)
相關內容編輯好后,點擊【立即提交】就添加成功了
添加成功后需要【退出登錄】,然后重新登錄就可以看到新增的菜單項了,完成這一步僅僅只是開始,接下來我們需要到對應文件夾下新增幾個文件,讓頁面成功的顯示出來

如果需要修改菜單信息,可以點擊【修改】進入下方頁面進行調整

第二步:嘗試在新頁面獲取日志信息
PbootCMS主要采用的是MVC模式,所以我們需要對應的增加三個文件
(MVC開始是存在于桌面程序中的,M是指業(yè)務模型,V是指用戶界面,C則是控制器,使用MVC的目的是將M和V的實現代碼分離,從而使同一個程序可以使用不同的表現形式。)
1、在路徑/apps/admin/model/system/下新增Model模型文件,文件名稱為 TongjiModel.php
為了方便測試,我們復制/apps/admin/model/system/SyslogModel.php 文件中的所有文件到新建好的控制器文件中
把:class SyslogModel extends Model 修改為:class TongjiModel extends Model
<?php
/**
* @copyright (C)2016-2099 Hnaoyun Inc.
* @author XingMeng
* @email hnxsh@foxmail.com
* @date 2017年3月29日
* 日志模型類
*/
namespace appdminmodelsystem;
use coreasicModel;
class TongjiModel extends Model
{
// 獲取日志列表
public function getList()
{
return parent::table('ay_syslog')->order('id DESC')
->page()
->select();
}
// 刪除全部
public function clearLog()
{
return parent::table('ay_syslog')->delete();
}
}2、在路徑/apps/admin/controller/system/下新增Controller控制器文件,文件名稱為 TongjiController.php
為了方便測試,我們復制/apps/admin/controller/system/SyslogController.php 文件中的所有文件到新建好的控制器文件中,本文件主要需要修改四處
反斜杠被編輯器轉化了,請對照實際內容進行調整,主要修改名稱
把:use appdminmodelsystemSyslogModel; 修改為 use appdminmodelsystemTongjiModel;
把:class SyslogController extends Controller 修改為 class TongjiController extends Controller
把:$this->model = new SyslogModel(); 修改為 $this->model = new TongjiModel();
把:$this->display('system/syslog.html'); 修改為 $this->display('system/#html');
<?php
/**
* @copyright (C)2016-2099 Hnaoyun Inc.
* @author XingMeng
* @email hnxsh@foxmail.com
* @date 2017年3月29日
* 系統日志控制器
*/
namespace appdmincontrollersystem;
use coreasicController;
use appdminmodelsystemTongjiModel;
class TongjiController extends Controller
{
private $model;
public function __construct()
{
$this->model = new TongjiModel();
}
// 日志列表
public function index()
{
$this->assign('syslogs', $this->model->getList());
$this->display('system/#html');
}
// 清理日志
public function clear()
{
if ($this->model->clearLog()) {
alert_location('清空成功!', url('/admin/Tongji/index'));
} else {
alert_location('清空失??!', url('/admin/Tongji/index'));
}
}
}3、在路徑/apps/admin/view/default/system/下新增View頁面文件,文件名稱為 #html
我們復制/apps/admin/view/default/system/syslog.html 里面的文件到新建好的文件中
以上就完成了MVC創(chuàng)建基礎流程,當然為了更好的適配環(huán)境,我們需要將這個新建的文件加入到后臺路由中,以防止部分空間因環(huán)境問題而無法訪問建好的頁面
{include file='common/head.html'}
<div class="layui-body">
<div class="layui-tab layui-tab-brief" lay-filter="tab">
<ul class="layui-tab-title">
<li class="layui-this" lay-id="t1">系統日志</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<table class="layui-table">
<thead>
<tr>
<th>序號</th>
<th>事件內容</th>
<th>用戶IP</th>
<th>操作系統</th>
<th>瀏覽器</th>
<th>用戶名</th>
<th>時間</th>
</tr>
</thead>
<tbody>
{foreach $syslogs(key,value,num)}
<tr>
<td>[num]</td>
<td>[value->event]</td>
<td>{fun=long2ip($value->user_ip)}</td>
<td>[value->user_os]</td>
<td>[value->user_bs]</td>
<td>[value->create_user]</td>
<td>[value->create_time]</td>
</tr>
{/foreach}
</tbody>
</table>
{if(session('ucode')==10001 && [$syslogs])}
<a href="{url./admin/Syslog/clear}" class="layui-btn layui-btn-sm" onclick='return confirm("您確定要清空么?")'>清空日志</a>
{/if}
<div class="page">{$pagebar}</div>
</div>
</div>
</div>
</div>
{include file='common/foot.html'}4、找到/apps/common/路徑下的 route.php 文件,新增后臺路由規(guī)則
參照其他頁面的路由規(guī)則,添加好我們已經建好的新頁面規(guī)則,然后保存,后臺新增頁面流程就基本完成了
我們可以進入后臺,找到新增的菜單位置,點擊菜單選項,就可以進入到新增的對應菜單頁面了

最終效果如圖所示,當然,我是已經對接了數據庫的統計表,所以顯示的是統計表的信息

掃一掃,關注我們



