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

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数据库...

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

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

    phpcmsv9帮助文档

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

    phpcmsV9后台模板

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

    PHPCMS V9 二次开发文档

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

    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编程**:作为...

    phpcms_v9.6.1_UTF8.zip_phpcms 二次开发

    【PHPcms V9.6.1 UTF8】是一款基于PHP语言和MySQL数据库的开源内容管理系统,专为二次开发设计的高效能平台。该系统以其强大的功能、灵活的扩展性、友好的用户界面以及高效率的代码执行而备受开发者喜爱。在进行...

Global site tag (gtag.js) - Google Analytics