要进行频道的二次开发,首先我们要先了解一下频道的目录结构,如下图

最基本的几个目录
admin 后台文件存放目录
index 前台文件存放目录
member 会员中心存放目录
model 数据表模型目录
traits 会员中心与后台共用的一些方法

admin_menu.php 后台菜单
member_menu.php 会员中心菜单
config.php 配置文件
Info.php 暂时还没用到

上面是该频道的所有PHP文件,存放在\application\目录里的具体一个频道下面,比如\application\bbs,
而他的模板文件在另外一个目录,比如
\template\index_style\default\bbs\ 前台模板目录
\template\admin_style\default\bbs\ 后台模板目录
\template\member_style\default\bbs\ 会员中心模板目录

文件并不少,你没必要一个一个的创建, 推荐你进后台,频道管理那里,复制一个CMS出来二次开发比较省事.
如果你手工复制目录的话,需要把对应的关键字比如 \cms\ 批量替换为你当前频道的目录名
事实上,官方开发的那么多频道都是在后台复制CMS出来进行二次开发的.

这些频道的PHP文件里边的代码相当少. 那是因为他是继承了 核心里边的方法, 如果核心默认的方法满足使用了,就不需要做任何处理. 如果觉得不满足的话,就从核心文件那里把那个方法复制出来,重新修改

这一点跟V系列差别非常大. V系列的话,你可以直接找到那个文件进行修改. 而这里呢?需要你复制核心里边的方法过来进行修改.
所以对刚刚入门或者是不懂PHP的人来说,是有一点难度.

难度是增加了, 但是系统就变得非常灵活了, 核心升级,所有频道都跟着升级. 并且频道不需要写太多的代码. 不然的话, 就会出现太多雷同的方法代码, 会把整个系统搞得很臃肿。

X1的特点,也是难点,就是 所有模块都是继承核心系统里边的方法,
即模块的
后台文件会继承 \application\common\controller\admin\ 这里系统后台的方法代码
前台文件会继承 \application\common\controller\index\ 这里系统前台的方法代码
会员中心会继承 \application\common\controller\member\ 这里系统会员中心的方法代码

而系统里边的方法,又多次继续上一级或者引用
\application\common\traits\AddEditList.php
\application\common\traits\ModuleContent.php
这两个文件的方法.

所以就给初学者或者是不懂PHP的风格开发者带来一定的难度. 要修改某个地方,总是找不到文件代码.

而V系列是写在对应的文件里边的,所以就方便修改, 但带来的问题就是代码臃肿,升级不方便.

在这里的话,你要修改什么,需要往上级,上级找不到的话,就再往上级, 或者是往 \application\common\traits\ 里边的文件 , 找到对应的方法,复制到当前文件,再进行修改.

所以开发X1的话,用记事本类的工具phpeditplus就不是那么方便了. 最好就用 Zend Studio 他有提示当前,并且能准确指向到上级的文件对应的方法. 方便你查看,或者是复制过来修改

最后,还有最关键的一点,就是后台基本没有使用模板,
所以在开发的时候,必须要熟悉 自动表单器的生成原理, 教程如下:
https://www.kancloud.cn/php168/x1_of_qibo/705990

视频地址
http://v.youku.com/v_show/id_XMzg0MTIxNzg0MA==.html?spm=a2h3j.8428770.3416059.1

齐博x1频道的二次开发入门讲解的更多相关文章

  1. 齐博软件 著名的老牌CMS开源系统 X1.0基于thinkphp开发的高性能免费开源PHP开放平台齐博x1.0基于thinkphp框架开发的高性能免费开源系统 主推圈子 论坛 预定拼团分销商城模块

    齐博X1--标签变量大全 1.网站名称: {$webdb.webname} 2.网址: {$webdb[www_url]} {:get_url('home')} 3.网站SEO关键词: 首页:{$we ...

  2. 齐博x1齐博首创钩子的使用方法

    齐博X1有两套钩子体系,第一套是基于TP思路设计的.跟外面的大同小异.现在重点讲一下第二套我们首创的使用方法. 首先说一下如何埋钩子,这个跟TP思路的钩子类似,就是在页面的任何地方加入如下代码即可如下 ...

  3. 齐博X1到底是个什么鬼?

    什么是齐博/齐博CMS之X1? 齐博X1是齐博软件基于thinkphp5开发的内容管理系统,拓展性非常强,后台一键升级,后台提供丰富的频道模块云市插件市场.风格市场.钩子市场,所有都是一键在线安装. ...

  4. 齐博x1到底是怎么的存在?

    齐博X1是齐博软件基于thinkphp5开发的内容管理系统,拓展性非常强,后台一键升级,后台提供丰富的频道模块云市插件市场.风格市场.钩子市场,所有都是一键在线安装. 系统已经对接好QQ.微信登录,同 ...

  5. 最近无聊搭建一个齐博X1的下载页面

    https://layui.wanxiangsucai.com/ 用layui官方镜像站的模版 改了个齐博X1的下载页面 https://x1.wanxiangsucai.com/ 哈哈哈!!! 还有 ...

  6. 齐博x1第四季《模块插件的制作》系列21-公共表单器的参数选项(7)

    password 密码类型 和text一样,只不过type类型是password,密码类型输入时,显示星号.即Html中的密码框类型 icon 字体图标类型 和列表页一样,把css的字体图标引入到了表 ...

  7. 齐博x1 二次开发的灵魂fun函数

    X1最强大之处,体现在灵活,扩展性强,在使用过程中,你会发现灵活之处非常之多. 现在跟大家讲一下,灵魂函数 fun() X1的核心函数文件是 application/common.php 随着模块频道 ...

  8. 齐博x1服务器性能太差,调整系统升级每次校验的文件数

    系统升级需要校验本地的文件是否被修改过,系统默认每次检验1千个文件,一般来说需要分四到五页来处理,如下图所示. 如果你的服务器性能太差的话,就需要手工把数值调小.把下面的代码复制出来.进入后台数据库管 ...

  9. 什么是齐博x1标签

    X系列的标签跟V系列的标签区别还是很大的.在V系列的时候,只有一种很简单的标签比如$label[XXXX]以前的标签相对现在的来说太简单的点,所以在功能上也比较受限.X系列目前有几下几种标签 {qb: ...

随机推荐

  1. jQuery 查找父元素的函数 parent 和 parents 的区别

    函数 描述 parent([expr]) 查找子节点childNode的父节点,不包括祖先节点 parents([expr]) 查找子节点childNode的父节点,包括祖先节点 Talk is ch ...

  2. MySQL设置字段从指定数字自增,比如10000

    MySQL设置字段从指定数字自增,比如10000. 方式一 方式二 方式一 此时就解决了MySQL从指定数字进行自增 CREATE TABLE hyxxb( hyid INT AUTO_INCREME ...

  3. redis淘汰策略和过期策略

    淘汰策略 https://blog.csdn.net/qq_55961709/article/details/124568269 LRU算法和LFU算法的区别: LRU:最近最少使用,淘汰时间长没有使 ...

  4. NOI 2019 省选模拟赛 T1【JZOJ6082】 染色问题(color) (多项式,数论优化)

    题面 一根长为 n 的无色纸条,每个位置依次编号为 1,2,3,-,n ,m 次操作,第 i 次操作把纸条的一段区间 [l,r] (l <= r , l,r ∈ {1,2,3,-,n})涂成颜色 ...

  5. React报错之Parameter 'event' implicitly has an 'any' type

    正文从这开始~ 总览 当我们不在事件处理函数中为事件声明类型时,会产生"Parameter 'event' implicitly has an 'any' type"错误.为了解决 ...

  6. bfile 类型数据的存取

    KingbaseES 支持 bfile 数据类型.对于bfile ,实际数据是存储在操作系统上,数据库存储的只是指向文件的指针. 具体例子如下: test=# create directory BFI ...

  7. web前端小知识 —— 【HTML,CSS,JS】集锦 【第一期】 { }

    1.获取元素样式属性的方法 第 一 种 : 较灵活,能获取传进来想获取的元素的样式属性,返回的是[字符串] function getStyle(obj, name) { // IE // 主流 ret ...

  8. 基于 Gitea 服务端渲染的 Jupyter Notebooks

    本指南将向您展示如何通过配置外部渲染器来使 Gitea 呈现 Jupyter Notebooks.当然,你还可以根据本指南来为你的 Gitea 实例配置其他类型的文档渲染器,甚至是二进制文件!相信Gi ...

  9. C#/VB.NET 在Word文档中插入分页符

    分页符是分页的一种符号,上一页结束以及下一页开始的位置.通查用于在指定位置强制分页.本文将分为两部分来介绍如何在Word文档中插入分页符.并附上C#/VB.NET以供参考,详情请阅读以下内容. 在特定 ...

  10. Apache开启目录浏览功能的正确姿势

    部分代码是抄的网友的,哪儿抄的忘了,我是自己修改了点,并非我本人原创,觉得侵权联系我,立马删 在宝塔面板中,打开网站的设置,在配置文件那里添加如下内容 Directory "文件绝对路径&q ...