`
hudeyong926
  • 浏览: 2035378 次
  • 来自: 武汉
社区版块
存档分类
最新评论

PHPCMSV9 二次开发

 
阅读更多

更多二次开发技巧,查看phpcms系统帮助 ,前台模板解析后的缓存 caches\caches_template\default

前台控制类index.php,前台标签类*_tag.class.php,前台需要的变量可以在前台控制类,前台标签类配合组合返回

 

添加一个新功能模块,他的信息存储用文章模型字段有些不能满足 ,一般采取哪些方法解决?

1.可以直接在数据库上加字段(后台模型管理--文章模型---字段管理,或数据库中直接加)

2.自定义新的字段模型(后台模型管理--添加模型)

3.直接建个新表

 

二次开发添加数据库表时用其他的标记,已示区分:

数据库配置文件位置:caches/configs/database.php

<?php
 return array (
   'default' => array (
     'hostname' => 'localhost',
     'database' => 'phpcms',
     'username' => 'admin',
     'password' => 'admin',
     'tablepre' => 'v9_',
     'charset' => 'gbk',
     'type' => 'mysql',
     'debug' => true,
     'pconnect' => 0,
     'autoconnect' => 0
   ),
    /* 以下默认不存在 */
   'extended' => array (
     'hostname' => 'localhost',
     'database' => 'phpcms',
     'username' => 'admin',
     'password' => 'admin',
     'tablepre' => 'ext_',
     'charset' => 'gbk',
     'type' => 'mysql',
     'debug' => true,
     'pconnect' => 0,
     'autoconnect' => 0
   ),
 );
 ?>

URL访问

http : //yourdomain.com/index.php?m=content&c=index&a=show&id=1

m = content 为模型/模块名称 位于phpcms/modules/content
c = index  为控制器名称 位于phpcms/modules/content/index.php
a = show 为时间名称 位于phpcms/modules/content/index.php 中show()方法
id = 1 为其他参数 与正常get传递参数形式相同

phpcms默认路由会定位到content模块的index控制器中的init操作 ,因为系统在没有指定模块和控制器的时候,会执行默认的模块和操作。

 

1.修改默认主页

修改/caches/configs/route.php文件

 

2.创建model

新建一个model phpcms/model/格式:my_model.class.php my指表名,其基本格式如下:

<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_sys_class('model', '', 0);
class my_model extends model {
    public function __construct()
    {
        $this->db_config = pc_base::load_config('database');
        $this->db_setting = 'extended';  //or default 
        $this->table_name = 'my';
        parent::__construct();
    }
}
?>

3.创建modules

我们要开发的东东(也就是模块)就在/phpcms/modules/下面新建一个my目录 其目录下的目录有 classes functions templates -------这里的目录是后台modules

1).创建一个前台php文件 index.php 其基本内容如下:

<?php
defined('IN_PHPCMS') or exit('No permission resources.');

class index
{
    function __construct()
    {
        $this->db = pc_base::load_model('my_model');
    }

    public function init()
    {
        $result = $this->db->select();
        $siteid = get_siteid();
        $sitelist  = getcache('sitelist','commons');
        $default_style = $sitelist[$siteid]['default_style'];
        include template('test', 'test', $default_style); //my是templates目录,第二个my是文件名
    }
}
?>

 

 2).创建一个后台php文件mytest.php 其基本内容如下:

<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_app_class('admin', 'admin', 0);

class mytest extends admin
{
    function __construct()
    {
        //需创建ext_my sql table
        $this->db = pc_base::load_model('my_model');
    }
    public function init()
    {
        $var = 'hello world!this is a example!';
        $siteid = get_siteid();
        $SEO = seo($siteid, '', $var);
        include $this->admin_tpl("backend");
    }
}
?>

 

打开phpcms_module表复制一条记录,修改插入

INSERT INTO `v9_module` (`module`, `name`, `url`, `iscore`, `version`, `description`, `setting`, `listorder`, `disabled`, `installdate`, `updatedate`)
VALUES
('test', '测试模块', 'my/', 0, '1.0', '测试模块', '', 0, 0, '2014-11-05', '2014-11-05');

 插入成功后,会看到test

将后台建的模块加入到后台菜单中

 加入成功后(后台的每个action都要在菜单管理中加入),你会看到如下图


4.创建templates

1)后台templates在phpcms\modules\mytest\templates\backend.tpl.php

<?php
echo $var;

2).前台在phpcms\templates 新建一个my目录 my就是include template('my','my',$style);

{template "content","header"}

{loop $result $value}
    用户ID:{$value['id']}<p>
    密码:{$value['username']}<p>
{/loop}

{template "content","footer"}
 
 
 
 
 
 
 
 
 
 
 
  • 大小: 56.2 KB
  • 大小: 65.6 KB
  • 大小: 43.3 KB
分享到:
评论

相关推荐

    phpcmsv9 二次开发文档

    在深入探讨《PHPCMSV9 二次开发文档》中提到的关键知识点之前,我们先简要了解一下PHPCMS。PHPCMS是一款基于PHP语言和MySQL数据库的开源内容管理系统(Content Management System, CMS),广泛应用于构建各类网站,如...

    phpcmsv9二次开发关键词

    ### phpcmsv9二次开发关键词 在深入探讨phcpcs9二次开发关键词之前,我们首先需要了解phcpcs9的基础知识以及它在网站开发中的应用。phcpcs9是一款非常流行的开源内容管理系统(CMS),它基于PHP语言和MySQL数据库...

    phpcmsv9二次开发手册

    PHPCMS V9 特别在二次开发和用户自定义方面提供了很大的灵活性和扩展性。 #### 2. PHPCMS V9 源码分析 ##### 2.1 目录及文件结构 PHPCMS V9 的目录结构清晰,便于开发者快速定位和管理文件。以下是主要目录的功能...

    phpcms v9 二次开发的一些小修改

    根据提供的文件信息,我们可以深入探讨在phpcms v9系统中进行二次开发时涉及的一些关键功能模块及相关的排序方法。这不仅适用于系统管理员,也适用于希望更深入理解如何自定义显示内容的技术人员。 ### 一、公告...

    phpcmsv9帮助文档

    phpcmsv9二次开发帮助文档,内容讲解详细、通俗易懂,是您进行php cms二次开发的理想选择。

    phpcmsV9后台模板

    就下我就对了,我浪费了50积分下载“phpcmsV9后台模板”,都是我这样的。 说的不清楚的不要下,要积分高的不要下。 说“由于官方后台不好看,而且对客户来说使用过程中容易起各种纠纷,该后台模板全新黑色后台,去除...

    PHPCMS V9 二次开发文档

    **PHPCMS V9 二次开发文档概述** PHPCMS V9 是一款开源的内容管理系统,支持二次开发。从 Beta 20101105 版本开始,它引入了一个名为 `moreinfo` 的参数属性,这个参数在返回数据时会连同副表中的数据一同返回。...

    phpcmsv9后台界面模板

    在实际使用中,开发者或设计师可能会根据具体需求对默认的后台界面模板进行二次开发和定制,以满足特定项目的需求。例如,调整颜色主题、优化交互流程、增加自定义模块等。同时,PHPCMS V9拥有丰富的API接口,可以...

    phpcmsV9.6.3升级补丁漏洞修复代码功能二次开发补丁phpcms网站开发教程文档手册

    本压缩包包括多年积累的phpcms网站开发升级补丁,漏洞修复补丁。 其中包括教程文档: 后台安装过程中报错 弹出新窗口而不是新选项卡 浏览器不支持缩略图flash上传改H5 表单发送的邮件不显示表单内容 升级后台编辑器-...

    最新phpcmsV9手机模板源码分享

    【phpcmsV9手机模板源码详解】 phpCMS V9是一款广泛应用的内容管理系统,专为构建高效、便捷的网站而设计。...在实际应用中,开发者可以根据具体需求进行二次开发和定制,以满足不同业务场景下的功能和视觉需求。

    phpcmsv9内容管理系统

    通过`phpcms_v9_UTF8`这个文件名可以看出,这个压缩包可能是phpcmsv9的UTF-8编码版本,包含了该系统的源码和其他相关资源,适合开发者进行二次开发或定制化需求。 总的来说,phpcmsv9是一个功能全面、稳定高效的...

    phpcms_v9二次开发手册

    总的来说,《phpcms_v9二次开发手册》是开发者宝贵的参考资料,它不仅教授如何利用现有功能,还鼓励创新和扩展,让开发者能根据自己的需求构建出独一无二的网站系统。无论是新手还是经验丰富的开发者,都能从中...

    phpcmsv9单文件上传功能_UTF8_phpcmsv9单文件上传功能_UTF8_piledqq_源码

    PHPcmsV9是一款基于PHP+MySQL开发的内容管理系统,它在网站建设和管理中提供了丰富的功能,其中单文件上传功能是其重要的组成部分之一。这一功能允许用户通过Web界面方便地上传各种类型的文件,如图片、文档等,为...

    phpcmsV9视频模块含详细教程

    总的来说,这份压缩包提供了全面的phpcmsV9视频模块二次开发指南,无论你是想要搭建自己的视频分享网站,还是希望优化现有系统的视频功能,都能从中受益。深入学习并实践这份教程,将有助于提升你的php编程能力和...

    phpcmsv9 官方手册 chm 版本

    PHPCMSV9官方开发文档 PHPSSO 使用手册 模板标签 全文检索 二次开发 常见问题 数据结构

    phpcmsv9购物车

    看到网上关于这个主题的资料相对匮乏,开发者出于分享精神,特地制作并开源了这个插件,方便其他用户进行二次开发或直接使用。 在phpcmsv9系统中,购物车功能的实现涉及到多个关键知识点: 1. **PHP编程**:作为...

Global site tag (gtag.js) - Google Analytics