首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHPCMS V9 二次開發指南(上):模塊結構、後台開發全流程、模型與模板實戰

     編輯:PHP 相關知識

PHPCMS V9 架構特點

  • 模塊位於 modules/,與數據表同名。
  • 控制器文件即類名,前台無需繼承,後台繼承 admin 類(自帶權限驗證)。
  • 默認路由:phpcms/caches/configs/route.php 指向 content 模塊 index 控制器 init 方法。

後台模塊開發五步走

1. 註冊模塊與菜單

後台 → 擴展 → 菜單管理 → 添加一級菜單(模塊名/文件名/方法名) → 添加子菜單 → v9_module 表註冊(相當於安裝)。

2. 建表

CREATE TABLE v9_link ( ... ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

3. 數據模型 link_model

<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_sys_class('model', '', 0);
class link_model extends model {
    function __construct() {
        $this->db_config = pc_base::load_config('database');
        $this->db_setting = 'default';
        $this->table_name = 'link';
        parent::__construct();
    }
}
// 注意:模型僅指定表與庫,非徹底 MVC,復制修改即可。
?>

4. 後台控制器 link(完整 CURD)

<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_app_class('admin', 'admin', 0);
class link extends admin {
    private $db, $db2;
    public $siteid;

    function __construct() {
        parent::__construct();
        $this->db = pc_base::load_model('link_model');
        $this->db2 = pc_base::load_model('type_model');
    }

    // 列表、分頁、分類篩選
    public function init() { /* ... */ }

    // 添加、驗證、附件關聯
    public function add() { /* ... */ }

    // 編輯分類、排序異步更新
    public function edit_type() { /* ... */ }

    // 刪除(單條/批量)、附件同步清理
    public function delete() { /* ... */ }
}
?>

關鍵點:

  • 操作類在 libs/classes/,模型基類 model.class.php 經工廠類操作 DB。
  • 常用方法:listinfo() 列表、get_one() 單條、insert() 增、update() 改。
  • 提示用 showmessage()(global.func.php),多語言用 L()。
  • 模板調用 include $this->admin_tpl('link_list')。

5. 後台模板 modules/link/templates/*.tpl.php

<?php defined('IN_ADMIN') or exit('No Permission resources.');
$show_dialog = 1;
include $this->admin_tpl('header', 'admin'); ?>
<table class="search-form">...</table>
<!-- 列表循環、操作按鈕、JS 腳本 -->

混編風格,控制器變量直接可用,底部可寫自定義 JS。

結語

PHPCMS 模塊化設計人性化,掌握「菜單註冊 → 建表 → 模型 → 控制器 → 模板」流程即可高效二開。待續《下篇》。

來源:@黑眼詩人
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved