PHPCMS 使用指南及二次开发向导--- 内容发布与管理篇.ppt
PHPCMS开发实例_PHPCMS二次开发_文件+操作+库
/phpcms/statics/plugin/)
SYS_TIME 当前系统时间(单位:s) 参考:time() CHARSET 输出字符集
PHPCMS V9 系统库调用
PHPCMS已经为我们定义了常用的库函数定义。 系统类库位于系统的phpcms/libs/classes目录下,函 数库文件名为*.class.php,其中global.func.php会被 PHPCMS自动加载(global.func.php中定义的函数可 直接使用) 系统函数库位于系统的phpcms/libs/functions目录下 面,函数库文件名为*.func.php
public static function load_sys_func($func) 用于加载系统函数库定义文件。该函数为pc_base对 象中定义的一个静态方法。
pc_base::load_sys_func(‘mail’); //调用mail函数包
pc_base::auto_load_func(); 设置PHP文件自动加载路径。默认 加载路径为 phpcms/libs/functions/autoload/目录。
说明
系统开始时间(单位:msec) 参考:microtime();
WEB_PATH
网站根路径( PHPCMS 相对网站 URL的相对路 径,一般为“/phpcms”)
APP_PATH
网பைடு நூலகம்
站
URL
地
址
(SITE_PROTOCOL+SITE_URL+WEB_PATH) JS_PATH Javascript 存 储 路 径 的 URL 地 址 ( 一 般 为 /statics/js/) CSS_PATH css 存 储 路 径 的 URL 地 址 ( 一 般 为
phpcms使用手册
phpcms使用手册Phpcms使用手册目录1.简介 (2)2.功能使用 (2)2.1我的面板 (2)2.1.1修改个人信息 (2)2.1.2修改密码 (3)2.1.3生成首页 (3)2.2设置 (4)2.2.1相关设置 (4)2.2.2管理员设置 (7)2.3模块 (11)2.3.1数据源 (11)2.4内容 (14)2.4.1内容发布管理 (14)2.4.2发布管理 (22)2.4.3内容相关设置 (22)2.5用户 (28)2.6界面 (28)2.6.1模板风格 (28)2.6.2标签向导 (30)2.7扩展 (30)2.8phpsso (30)1.简介PHPCMS V9(简称V9)采用PHP5+MYSQL做为技术基础进行开发。
V9采用OOP(面向对象)方式进行基础运行框架搭建。
模块化开发方式做为功能开发形式。
框架易于功能扩展,代码维护,优秀的二次开发能力,可满足所有网站的应用需求。
5年开发经验的优秀团队,在掌握了丰富的WEB开发经验和CMS 产品开发经验的同时,勇于创新追求完美的设计理念,为全球多达10万网站提供助力,并被更多的政府机构、教育机构、事业单位、商业企业、个人站长所认可。
V9在保留2008版的特点的同时,对新版本作出重大的创新,以期待全新的PHPCMS 系统服务更多的用户。
2.功能使用2.1我的面板2.1.1修改个人信息写入你要修改的数据:真实姓名,E-mail,语言。
提交后,如提示成功则可完成修改操作,否则提示错误消息。
如下图所示:2.1.2修改密码录入你的旧密码和修改的密码。
提交后,如提示成功则可完成修改操作,否则提示错误消息。
如下图所示:2.1.3生成首页如下图所示:点击“生成首页”。
如提示成功则可完成修改操作,否则提示错误消息。
成功信息:同时你也可以通过:当前位置菜单栏——>生成首页;进行生成首页。
2.2设置2.2.1相关设置2.2.1.1站点管理1、添加站点V9系统支持多站点发布,添加站点时可选择发布点,并且可以选择seo设置,站点模版,上传附件设置等选项。
PHPCMS开发实例_PHPCMS二次开发_目录与入口程序
PHPCMS
model
lib language cache caches_* configs api
目录结构——api
接口文件目录
目录结构——cache
配置&缓存文件目录
configs:系统配置文件目录 caches_*:系统缓存目录
目录结构——phpcms
phpcms主目录
language:语言包存储目录 lib :底层框架存储目录 model:数据表对象定义存储目录 modules:功能模块存储目录 templates:模板文件存储目录
北风网PHPCMS二次开发
剖析PHPCMS
目录与入口程序
讲师:胖龙(北风网版权所有)
favicon.ico
robots.txt
crossdomain.xm l index.php
ห้องสมุดไป่ตู้PHPCMS V9 的目录结构
admin.php uploadfile js statics images css phpsso_server templates Phpcms modules
欢迎访问我们的官方网站
目录结构——phpsso_server
phpsso主目录
目录结构——statics
phpcms主目录
css:系统样式定义文件存储目录
images:系统图片存储目录 js:系统JS包存储目录
目录结构——uploadfile
网站上传文件存储目录
目录结构——根目录文件
admin.php:管理平台入口程序 index.php:系统入口程序 crossdomain.xml:FLASH跨域传输配置文件 robots.txt:搜索引擎蜘蛛限制配置文件 favicon.ico:系统图标
PHPCMS V9模型二次开发[高级]_2
PHPCMS v9模型二次开发[高级]概述:PHPCMS v9模型二次开发主要分为底层模型开发,即代码级的模型开发;其次,是可视化的模型开发,即通过登录系统后台添加模型。
第一种模型开发对技术要求很高,但是,能实现很多PHPCMS v9没有实现或者不能实现的功能。
第二种模型开发完全隐藏了技术的实现,操作简单,使用方便,在没有特殊功能的时候,这个是首先。
我们今天先讲第二种,可视化的模型开发。
假如,现在我们有一个产品展示功能。
要显示的信息如下:*)产品名称*)产品价格*)出厂时间*)规格参数*)配件列表*)产品图片然后,PHPCMS v9提供的文章模型、图片模型、下载模型根本不能满足我们的这个需求。
此时,我们就会涉及到添加模型的操作。
1、登录系统后台,进入导航“内容”----》"管理模型"然后,在页面的右边找到“添加模型”,点击进入添加模型:模型名称必须填写,当我们在添加栏目的时候就可以选择以这个名称命名的模型了。
模型表键名也必须填写,这个将会在数据库里面有二张表对应,假设此时的表前缀是:v9_则对应的两张表名为:v9_products、v9_products_data2、点击确定创建好自定义的“产品模型”之后,点击“字段管理”点击“字段管理”之后,在弹出的页面里面进行字段的禁用、删除、添加等操作。
比如:添加产品名称、产品价格、产品规格、出厂时间等字段。
删除:阅读收费、允许评论、分页方式、相关文章等字段。
禁用:关键词、推荐位等字段。
删除字段与禁用字段都很方便快捷,现在来谈谈添加字段。
在点击“字段管理”进入页面后,左上角会有一个“添加字段”的功能。
点击“添加字段”进入页面。
如图:我们以添加一个是否显示产品的功能字段,那么在字段类型那里可以选择“选项”;由于,我们会经常使用这个字段进行查询,所以,我们在“作为主表字段”设置为是;字段名设置为isshows,这个地方的字段名对应表中的v9_products表中的字段,添加字段完成之后,可以在这个表中看得出来。
二次开发-2
自增
YES No No No No No No
说明
自增的留言信息ID 分类ID 用户名 留言类型(留言、回复) 留言/回复内容 留言/回复时间 站点ID
•
你还可以根据自己的需求,再增加一些比如QQ,email, 什么的,你可以继续增加
PHPCMS 二次开发全新课程 小波主讲
•
数据库表的设计
根据上面的字段,类型,长度,我们就可以做出.SQL语句来了
GBK 版本的,就更改下 CHARSET 就可以了
CHARSET=gbk;
新建一个 guestbook.txt 文件复制上面的内容,然后,另存为 guestbook.sql
PHPCMS 二次开发全新课程 小波主讲
•
• • • •
模块功能的实现 二
需求也分析了,主要数据表也建设了,接下来,我们需要建设文件与文件夹 进入wwwroot \phpcms\modules 进入站点根目录下 phpcms 框架目录下的 modules 模块目录下 新建文件夹 guestbook 进入后台,模块管理,我们可以看到,有个无法安装,名字为空,且模块目录为 guestbook 的模块
PHPCMS 二次开发全新课程
教员:小波 论坛账号:0793jay
PHPCMS 二次开发全新课程 小波主讲
• 什么 是 模块,什么是插件 • 如何安装模块 • 如何设计模块 • 模块功能的实现 • 模块需要界面的方法与使用
PHPCMS 二次开发全新课程 小波主讲
什么是模块?什么是插件?
无法安装,是因为缺失安装文件及一些安装必要的配置文件。下一篇,我们详细讲解每个文件。 此方法是适合 开发者, 自己使用的,一般就不需要安装及卸载程序了,直接就操作数据库了,但先,我们因为需要讲的详细,就把每个步骤都讲解 清楚,介绍清楚。这样,你开发的功能,也能给其他的用户共享使用了
phpcms二次开发
phpcms v9二次开发及使用中各类问题结集合解决方案安装使用1、栏目所属模型的修改、合并、删除?修改栏目所属模型前,先清空该栏目的内容。
合并?呵呵,自己动手批量转移内容不就得了,注意:必须是相同模型的栏目才可以转移。
删除:后台-内容管理-栏目管理,重新统计栏目数据更新栏目缓存 2、后台登陆不上,提示用户名不能为空试试清除cache文件夹下的error_log.php 3、首页登录直接跳到会员中心,改成其它在根目录下找到如下位置phpcms\modules\member\index.php,修改569行代码为1. $forward = isset($_POST['forward']) && !empty($_POST['forward']) ? urldecode($_POST['forwa rd']) : 'index.php';4、后台锁屏模版样式phpcms\modules\admin\templates\index.tpl.php 36行左右 5、整合Ucenter 6、网站域名迁移7、首页登录框的实现8、更换了网站地址,会员无法登陆换地址,需要修改 caches\configs\system.php 文件 \phpsso_server\caches\configs\system.php 文件也要改 9、数据库用户名和密码修改,数据库连接文件在哪里 \caches\configs\database.php 10、不想开户缩略图功能不要选择自动截取第一张做为缩略图就行了.在模型字段,缩略图中设置 11、发布了栏目,首页的导航栏不显示12、火车头采集时,加入[page]分页符时,不分页问题火车头一般都有接口,所有参数都要在接口上指定才行。
比如你在后台内容编辑器中设置了默认为手动分页。
那么,并不意味着火车头在发布时,也会帮你手动分页的。
phpcmsv9二次开发手册
PHPCMS V9 二次开发文档文件目录结构根目录| - api接口文件目录| - caches缓存文件目录| -configs系统配置文件目录| - caches_*系统缓存目录| - phpcms phpcms 框架主目录| - languages 框架语言包目录| - libs 框架主类库、主函数库目录| - model 框架数据库模型目录| - modules 框架模块目录| - templates 框架系统模板目录| - phpsso_server phpsso 主目录| - statics 系统附件包| -css系统css包| - images 系统图片包| - js 系统js 包| - uploadfile 网站附件目录| - admin.php 后台管理入口| - index.php 程序主入口| - crossdomain.xml FLASH 跨域传输文件| - robots.txt 搜索引擎蜘蛛限制配置文件| - favicon.ico 系统icon 图标PC标签使用说明在PHPCMS V9中我们正式开始需要PC标签做为数据的获取的方式。
PC标签是以下面的方式进行声明{pc:content action="lists" cache="3600" num ="20" page="$page"}{/pc}PC标签必须以{pc}开头,并以{/pc}结尾的代码片段。
当然不以{/pc}结尾并不会引起程序致命性的错误,导致程序无法继续运行。
以下为两种已知可能会出现的问题:1.当网页中出现两个PC标签时,可能会使得没有闭合的PC标签之后的PC标签数据和其混乱。
2.在后台可视化编辑时,可能出现网页结构错乱的问题。
PC标签分析:PC标签中{pc:}冒号之后跟随的为模块名。
如上面的例子中调用的是内容模型的PC标签。
actio n="list"这个形式所代表的是参数。
PHPcms实用手册
父栏目名称与链接:{$CATEGORYS[$CAT[parentid]][catname]} 与 {$CATEGORYS[$CAT[parentid]][url]}
获取上上级栏目名称与链接:{$CATEGORYS[$CATEGORYS[$CAT[parentid]][parentid]][catname]} 与 {$CATEGORYS[$CATEGORYS[$CAT[parentid]][parentid]][url]}
{str_cut(strip_tags($r[description]), 165)ቤተ መጻሕፍቲ ባይዱ 常用标签:{$r[thumb]}
推荐位调用: {pc:content action="position" posid="1" order="listorder DESC" num="5"}
{loop $data $r} <li><a href="{$r[url]}" target="_blank"><img src="{$r[thumb]}" text="{$r[title]}" alt="{$r[title]}" width="727" height='243' /></a></li> {/loop} {/pc}
当前栏目名称:{$catname} 获取父栏目 id/获取父栏目名称:{$CATEGORY[$catid][parentid]} / {$CATEGORYS[$CAT[parentid]][catname]} 指定 ID 栏目名称:{$CATEGORYS[栏目 ID 号]['catname']} / {$CATEGORYS[$catid]['catname']} 其他常用调用:{$r[description]} {$r[image]}
CMS内容管理系统 ppt课件
ppt课件
26
共同成长 智慧同行
模板管理》删除、模板导入导出
删除
删除不使用的网页模板文件
模板导入
将备份的模板文件导入系统,直接覆盖现有的模板及其附属文件。 覆盖网站已有的栏目;对于网站中有,而模板中不存在的栏目, 在进行模板导入时此类栏目继续保留
模板导出
模板导出是将整个网站的所有模板导出到客户端。导出的内容包 括模板所包括的图片文件、FLASH文件、CSS文件等。所有导出 内容按标准模板目录结构编排。模板导出还将导出网站的所有栏 目
可以设置的参数有:是否审核、三级页面标题、最大图片尺寸、 最大附件尺寸
设置最大图片 尺寸,如果不 设置则使用默 认值,默认值 为默认为2MB
设置最大附件 尺寸,如果不 设置则使用默 认值,默认值 为默认为2MB
ppt课件
33
共同成长 智慧同行
备份与还原
备份与还原
备份与还原模块提供对网站内容进行备份与还原的操作。点击网 站管理 》 备份与还原,进入本模块。主要功能包括:
ppt课件
20
共同成长 智慧同行
模板管理》新建网页
新建网页
网页类型: 主页面
一级页面 二级页面 三级页面 其他页面等
语种支持中文和英 文,英文主页面默 认为enindex.html
文件名必须 以.html或者.htm
结束
上传事先做好的静 态页面
ppt课件
21
共同成长 智慧同行
模板管理》网页类型
网页类型
对齐方式
编辑或者插 入超链接
动态工具栏, 与各个栏目绑 定
ppt课件
23
共同成长 智慧同行
栏目管理》定制页面
定制页面
phpcms 技术手册
phpcms 技术手册PHPcms是一款基于PHP语言开发的内容管理系统,它具有易用性、高效性、安全性等优点,被广泛应用于各类网站的建设。
本文将从以下几个方面介绍PHPcms技术手册。
一、安装与配置PHPcms的安装与配置相对简单,只需按照官方文档的步骤进行即可。
在安装过程中,需要注意数据库的配置、文件权限的设置等问题。
安装完成后,还需要对系统进行一些基本的配置,如网站名称、SEO设置、邮件服务器配置等。
二、模板与标签PHPcms采用了模板与标签的方式来实现页面的展示。
模板是网站的外观,而标签则是用来调用数据库中的数据的。
PHPcms提供了丰富的标签库,包括文章列表、栏目列表、搜索框、分页等常用标签。
同时,PHPcms还支持自定义标签,可以根据自己的需求进行扩展。
三、插件与模块PHPcms支持插件与模块的扩展,可以通过安装插件或模块来增强系统的功能。
插件是一些独立的功能模块,可以直接安装使用,如留言板、友情链接等。
而模块则是一些功能集合,需要根据自己的需求进行配置,如会员中心、商城等。
四、安全与优化PHPcms在安全性方面做得比较好,采用了多种安全策略来保障系统的安全性。
例如,采用了防SQL注入、XSS攻击等技术来防范攻击。
同时,PHPcms还提供了一些优化方案,如缓存、CDN加速等,可以提高系统的性能。
五、社区与支持PHPcms拥有庞大的社区和支持团队,用户可以在官方论坛或社交媒体上获取技术支持和交流经验。
同时,PHPcms还提供了详细的技术手册和API文档,方便用户进行开发和扩展。
总之,PHPcms是一款功能强大、易用性高的内容管理系统,可以满足各类网站的建设需求。
通过学习PHPcms技术手册,可以更好地掌握系统的使用和开发技巧,提高网站的质量和效率。
内容发布(CMS)管理系统使用手册
内容发布(CMS)管理系统使用手册Prepared By PMPARK2010.3目录1. 系统概述 (4)1.1.系统简介 (4)1.2.系统特点 (4)1.2.1. 统一的内容平台 (4)1.2.2. 适用性好 (4)2. 快速建站 (5)2.1.基本概念 (5)2.2.创建一个网站 (5)2.2.1. 登陆系统 (5)2.2.2. 创建栏目 (5)2.2.3. 新建文章 (9)2.2.4. 创建模板 (10)2.2.5. 发布 (10)3. 功能进阶 (10)3.1.部门管理系统 (10)3.1.1. 新建部门 (11)3.1.2. 修改部门资料 (11)3.1.3. 删除部门 (11)3.1.4. 查看下属部门资料 (12)3.2.用户管理 (12)3.3.角色权限管理 (17)3.3.1. 增加角色 (17)3.3.2. 删除角色 (17)3.3.3. 更改角色 (17)3.4.用户角色权限关联 (18)3.4.1. 增加用户权限 (18)3.4.2. 删除用户权限 (19)3.5.文件管理系统 (19)3.6.栏目管理系统 (20)3.6.1. 栏目规划 (21)3.6.2. 修改栏目 (22)3.6.3. 增加栏目 (24)3.6.4. 删除栏目 (25)3.6.5. 复制栏目到新分类 (25)3.6.6. 移动栏目到新分类 (26)3.6.7. 设定栏目排序号 (27)3.7.内容发布系统 (28)3.7.1. 文章的发布 (28)3.7.2. 增加文章 (29)3.7.3. 删除文章 (30)3.7.4. 移动文章到新分类或复制文章到新分类 (30)3.7.5. 设定文章的排序号 (31)3.7.6. 修改文章 (31)3.7.7. 文章内容的录入 (33)1)图片插入 (33)3)图片上传 (34)3.7.8. 文章引用 (36)3.10 IP限制登陆管理 (37)1.系统概述1.1.系统简介内容发布(CMS)系统是一套完全基于Java 和浏览器技术的网络内容管理软件,内容发布(CMS)系统集中了浏览器内容创建和写作、内容交付、基于模板的内容发布、强大的资源管理于一身。
PHPCMS_v9 使用指南及二次开发向导
模块: phpcms v9框架中的模块,位于phpcms/modules目录中 每一个目录称之为一个模块。即url访问 中的m。
访问content模块示例:/index.php?m=content 控制器: phpcms v9的控制器就是模块的类文件,位于phpcms/modules/模块/目录下面。 类名成就是文件名+.php,例如一个名为abc的控制器,那么他的命名为abc.php即可。 控制器类默认继承系统的函数库,可以直接使用。控制器类的类名称与控制器文件名必须相同。 如果您创建了一个abc.php在test模块下,那么我们在浏览器里面输入URL: /index.php?m=test&c=abc
• PHPCMS V9 介绍 • PHPCMS V9 后台功能 • PHPCMS V9 结构设计 • PHPCMS V9 核心文件说明 • PHPCMS V9 二次开发 • PHPCMS V9 模板与标签
PHPCMS 使用指南及二次开发向导
根目录 | – api 结构文件目录 | – caches 缓存文件目录 | | – configs 系统配置文件目录 – caches_* 系统缓存目录
PHPCMS 使用指南及二次开发向导
• PHPCMS V9 介绍 • PHPCMS V9 后台功能 • PHPCMS V9 结构设计 • PHPCMS V9 核心文件说明 • PHPCMS V9 二次开发 • PHPCMS V9 模板与标签
PHPCMS 使用指南及二次开发向导
• PHPCMS V9 介绍 • PHPCMS V9 后台功能 • PHPCMS V9 结构设计 • PHPCMS V9 核心文件说明 • PHPCMS V9 二次开发 • PHPCMS V9 模板与标签
PHPCMS 使用指南及二次开发向导--- 内容发布与管理篇.ppt
10
三、相关更新操作
2019年8月23
感谢你的观看
Thank you!
2019年8月23
感谢你的观看
11
2019年8月23
感谢你的观看
PHPCMS网络培训课程 --- 内容发布与管理篇
5
接上一页,继续发文章时,选择介绍,如下图所示:
2019年8月23
此处推荐位与推荐位管理相对应
可选择已经存在投票,亦可以新增加投票
感谢你的观看
PHPCMS网络培训课程 --- 内容发布与管理篇
6
一、信息的推送与批量移动操作 V9可以把文章推送到相关位置,但有二个前提: a. 后台事先指定推荐位(可指定推荐位所属模型,甚至指定特定栏目) b. 前台模版加入调用推荐位信息的代码 下面我们以向首页 “首页头条推荐 ” 推送内容为例子,进行介绍,看下图:
2019年8月23
感谢你的观看
PHPCMS网络培训课程 --- 内容发布与管理篇
9
批量移动以后信息将进入 社会 栏目频道下,如下图所示:
说明: 批量移动是从一栏目移动至另一栏目,原栏目数据不再保留!而推送是标题和链接地址复制一份 至目标栏目,原栏目并没有发生改变!
2019年8月23
感谢你的观看
PHPCMS网络培训课程 --- 内容发布与管理篇
推送前首页效果
2019年8月23
感谢你的观看
推送后首页头条效果
PHPCMS网络培训课程 --- 内容发布与管理篇
7
推送到推荐位,如下图所示:
勾选要推荐到的推荐位
2019年8月23
感谢你的观看
推荐位管理
PHPCMS网络培训课程 --- 内容发布与管理篇
8
PHP实战开发教程PHPCMS二次开发URLMVC-PPT精选文档
视图 发送用户输入给控制器 将程序结果展示给用户
调用视图
用户请求
控制器 定义应用程序业务流 根据用户动作调用模型 根据用户动作调用视图
MVC——视图
视图是用户看到并与之交互的界面。对老式的Web应 用程序来说,视图就是由HTML元素组成的界面,在 新式的Web应用程序中,HTML依旧在视图中扮演着 重要的角色,但一些新的技术已层出不穷,它们包括 Adobe Flash和象XHTML,XML/XSL,WML等一些 标识语言和Web services。如何处理应用程序的界面 变得越来越有挑战性。MVC一个大的好处是它能为 你的应用程序处理很多不同的视图。在视图中其实没 有真正的处理发生,不管这些数据是联机存储的还是 一个雇员列表,作为视图来讲,它只是作为一种输出 数据并允许用户操纵的方式。
控制层的概念也很有效,由于它把不同的模型和 不同的视图组合在一起完成不同的请求,因此,控制 层可以说是包含了用户请求权限的概念。 最后,它还有利于软件工程化管理。由于不同的 层各司其职,每一层不同的应用具有某些相同的特征 ,有利于通过工程化、工具化产生管理程序代码。
MVC——不足
MVC的不足体现在以下几个方面: 增加了系统结构和实现的复杂性。对于简单的界面,严格 遵循MVC,使模型、视图与控制器分离,会增加结构的复 杂性,并可能产生过多的更新操作,降低运行效率。 视图与控制器间的过于紧密的连接。视图与控制器是相互 分离,但确实联系紧密的部件,视图没有控制器的存在,其 应用是很有限的,反之亦然,这样就妨碍了他们的独立重用 。 视图对模型数据的低效率访问。依据模型操作接口的不同 ,视图可能需要多次调用才能获得足够的显示数据。对未变 化数据的不必要的频繁访问,也将损害操作性能。·
欢迎访问我们的官方网站 ibeifeng
PHPCMS二次开发教程——模块设计(实例附数据库设计)
PHPCMS二次开发流程(实例)如下图是官方文档给出的phpcms二次开发的流程:本文以创建一个答题模块为实例,进行逐一讲解。
创建数据库和数据表:本模块是在phpcms v9框架上开发的,但不使用phpcms数据库,例如这里我新建一个数据库,名为:yixin,所有表默认前缀yx_。
新建表:yx_user表yx_user栏目名称字段名类型可否为空说明用户编号userid int N 主键、AI 用户名username varchar(20) N用户密码password varchar(32) N用户昵称nickname varchar(20) Ndatetime N注册时间regtime注册ip regip varchar(15) N上次登录时间lasttime datetime N 默认为:0000-00-0000:00:00上次登录ip lastip varchar(15) N 默认:0 登录次数loginnum smallint N 默认:1 用户邮箱email varchar(32) N用户组类型groupid tinyint N用户状态status tinyint N 默认:1 用户答对题数rightnum smallint N 默认:0 用户真实姓名realname varchar(50) Y 默认:0CREATE TABLE`yx_user`(`userid`INT(11)NOT NULL AUTO_INCREMENT,`username`VARCHAR(20)NOT NULL,`password`VARCHAR(32)NOT NULL,`nickname`VARCHAR(20)NOT NULL,`regtime`DATETIME NOT NULL,`regip`VARCHAR(15)NOT NULL,`lasttime`DATETIME NOT NULL DEFAULT'0000-00-00 00:00:00',`lastip`VARCHAR(15)NOT NULL DEFAULT'0',`loginnum`SMALLINT(6)NOT NULL DEFAULT'1',`email`VARCHAR(32)NOT NULL,`groupid`TINYINT(4)NOT NULL,`status`TINYINT(4)NOT NULL DEFAULT'1',`realname`VARCHAR(50)NOT NULL DEFAULT'0',`rightnum`SMALLINT(6)NOT NULL DEFAULT'0',PRIMARY KEY(`userid`))ENGINE=MYISAM;新建表:yx_question表yx_question栏目名称字段名类型可否为空说明题目编号questionid int N 主键、AI题目内容content mediumtext N题集setid int N 默认为:0正确选项answer0 varchar(50) N错误选项1 answer1 varchar(50) N错误选项2 answer2 varchar(50) N错误选项3 answer3 varchar(50) N答案说明description varchar(50) Y 默认:0添加日期addtime datetime N出题人userid int N与yx_user表的userid关联审核人adminid int N 默认为:0,与yx_admin表的adminid关联审核时间verifytime datetime N题目状态status tinyint N 默认为:0CREATE TABLE`yx_question`(`questionid`INT(11)NOT NULL AUTO_INCREMENT,`content`MEDIUMTEXT NOT NULL,`setid`INT(11)NOT NULL DEFAULT'0',`answer`VARCHAR(50)NOT NULL,`answer1`VARCHAR(50)NOT NULL,`answer2`VARCHAR(50)NOT NULL,`answer3`VARCHAR(50)NOT NULL,`description`VARCHAR(50)NOT NULL DEFAULT'0',`addtime`DATETIME NOT NULL,`userid`INT(11)NOT NULL,`adminid`INT(11)NOT NULL DEFAULT'0',`verifytime`DATETIME NOT NULL DEFAULT'0000-00-00 00:00:00',`status`TINYINT(4)NOT NULL DEFAULT'0',PRIMARY KEY(`questionid`))ENGINE=MYISAM新建表:yx_question_set表yx_question_set栏目名称字段名类型可否为空说明题集编号setid int N 主键、AI 题集名称setname varchar(50) N题集描述description text N题集状态enabled tinyint(1) N 0:不可用;1:可用题集题数questionnum smallint N 默认:0CREATE TABLE`yx_question_set`(`setid`INT(11)NOT NULL AUTO_INCREMENT,`setname`VARCHAR(50)NOT NULL,`description`TEXT NOT NULL,`enabled`TINYINT(1)NOT NULL DEFAULT'0',`questionnum`SMALLINT(6)NOT NULL DEFAULT'0',PRIMARY KEY(`setid`))ENGINE=MYISAM新建表:yx_user_select_set表yx_user_select_set栏目名称字段名类型可否为空说明编号id int N 主键、AI 用户编号userid int N题集编号setid int NCREATE TABLE`yx_user_select_set`(`id`INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `userid`INT NOT NULL,`setid`INT NOT NULL)ENGINE=MYISAM;新建表:yx_user_answer_record表yx_user_answer_record栏目名称字段名类型可否为空说明记录编号id int N 主键、AI问题编号questionid int N 与yx_question表的questionid关联答题结果check tinyint N 0:错误;1:正确答题人userid int N 与yx_user表的userid关联答题时间answertime datetime NCREATE TABLE`yx_user_answer_record`(`id`INT NOT NULL AUTO_INCREMENT PRIMARY KEY,`questionid`INT NOT NULL,`check`TINYINT NOT NULL,`userid`INT NOT NULL,`answertime`DATETIME NOT NULL)ENGINE=MYISAM;新建表:yx_admin表yx_admin栏目名称字段名类型可否为空说明管理员编号adminid int N 主键、AI管理员名adminname varchar(20) N管理员密码password varchar(32) N管理员类型roleid smallint N 默认:0上次登录时间lasttime datetime N 默认:0000-00-0000:00:00 上次登录ip lastip varchar(15) N 默认:0管理员邮箱email varchar(40) N 默认:0管理员真实姓名realname varchar(50) NCREATE TABLE`yx_admin`(`adminid`INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `adminname`VARCHAR(20)NOT NULL,`password`VARCHAR(32)NOT NULL,`roleid`SMALLINT NOT NULL DEFAULT'0',`lasttime`DATETIME NOT NULL DEFAULT'0000-00-00',`lastip`VARCHAR(15)NOT NULL DEFAULT'0',`email`VARCHAR(40)NOT NULL DEFAULT'0',`realname`VARCHAR(50)NOT NULL)ENGINE=MYISAM;新建表:yx_admin_role表yx_admin_role栏目名称字段名类型可否为空说明类型编号roleid smallint N 主键、AI 类型名称rolename varchar(50) N类型描述description text N类型状态enabled tinyint(1) N 0:不可用;1:可用CREATE TABLE`yx_admin_role`(`roleid`INT NOT NULL AUTO_INCREMENT PRIMARY KEY,`rolename`VARCHAR(50)NOT NULL,`description`TEXT NOT NULL,`enabled`TINYINT(1)NOT NULL)ENGINE=MYISAM;创建模块目录:PHPCMS v9框架中的模块,位于phpcms/modules目录中每一个目录称之为一个模块,如果要创建一个模块,只要在phpcms/modules 目录下创建文件夹并放入你的控制器类就可以了。
PHPCMS二次开发教程——模块设计(实例附数据库设计)
PHPCMS二次开发流程(实例)如下图是官方文档给出的phpcms二次开发的流程:本文以创建一个答题模块为实例,进行逐一讲解。
创建数据库和数据表:本模块是在phpcms v9框架上开发的,但不使用phpcms数据库,例如这里我新建一个数据库,名为:yixin,所有表默认前缀yx_。
新建表:yx_user表yx_user栏目名称字段名类型可否为空说明用户编号userid int N 主键、AI 用户名username varchar(20) N用户密码password varchar(32) N用户昵称nickname varchar(20) Ndatetime N注册时间regtime注册ip regip varchar(15) N上次登录时间lasttime datetime N 默认为:0000-00-0000:00:00上次登录ip lastip varchar(15) N 默认:0 登录次数loginnum smallint N 默认:1 用户邮箱email varchar(32) N用户组类型groupid tinyint N用户状态status tinyint N 默认:1 用户答对题数rightnum smallint N 默认:0 用户真实姓名realname varchar(50) Y 默认:0CREATE TABLE`yx_user`(`userid`INT(11)NOT NULL AUTO_INCREMENT,`username`VARCHAR(20)NOT NULL,`password`VARCHAR(32)NOT NULL,`nickname`VARCHAR(20)NOT NULL,`regtime`DATETIME NOT NULL,`regip`VARCHAR(15)NOT NULL,`lasttime`DATETIME NOT NULL DEFAULT'0000-00-00 00:00:00',`lastip`VARCHAR(15)NOT NULL DEFAULT'0',`loginnum`SMALLINT(6)NOT NULL DEFAULT'1',`email`VARCHAR(32)NOT NULL,`groupid`TINYINT(4)NOT NULL,`status`TINYINT(4)NOT NULL DEFAULT'1',`realname`VARCHAR(50)NOT NULL DEFAULT'0',`rightnum`SMALLINT(6)NOT NULL DEFAULT'0',PRIMARY KEY(`userid`))ENGINE=MYISAM;新建表:yx_question表yx_question栏目名称字段名类型可否为空说明题目编号questionid int N 主键、AI题目内容content mediumtext N题集setid int N 默认为:0正确选项answer0 varchar(50) N错误选项1 answer1 varchar(50) N错误选项2 answer2 varchar(50) N错误选项3 answer3 varchar(50) N答案说明description varchar(50) Y 默认:0添加日期addtime datetime N出题人userid int N与yx_user表的userid关联审核人adminid int N 默认为:0,与yx_admin表的adminid关联审核时间verifytime datetime N题目状态status tinyint N 默认为:0CREATE TABLE`yx_question`(`questionid`INT(11)NOT NULL AUTO_INCREMENT,`content`MEDIUMTEXT NOT NULL,`setid`INT(11)NOT NULL DEFAULT'0',`answer`VARCHAR(50)NOT NULL,`answer1`VARCHAR(50)NOT NULL,`answer2`VARCHAR(50)NOT NULL,`answer3`VARCHAR(50)NOT NULL,`description`VARCHAR(50)NOT NULL DEFAULT'0',`addtime`DATETIME NOT NULL,`userid`INT(11)NOT NULL,`adminid`INT(11)NOT NULL DEFAULT'0',`verifytime`DATETIME NOT NULL DEFAULT'0000-00-00 00:00:00',`status`TINYINT(4)NOT NULL DEFAULT'0',PRIMARY KEY(`questionid`))ENGINE=MYISAM新建表:yx_question_set表yx_question_set栏目名称字段名类型可否为空说明题集编号setid int N 主键、AI 题集名称setname varchar(50) N题集描述description text N题集状态enabled tinyint(1) N 0:不可用;1:可用题集题数questionnum smallint N 默认:0CREATE TABLE`yx_question_set`(`setid`INT(11)NOT NULL AUTO_INCREMENT,`setname`VARCHAR(50)NOT NULL,`description`TEXT NOT NULL,`enabled`TINYINT(1)NOT NULL DEFAULT'0',`questionnum`SMALLINT(6)NOT NULL DEFAULT'0',PRIMARY KEY(`setid`))ENGINE=MYISAM新建表:yx_user_select_set表yx_user_select_set栏目名称字段名类型可否为空说明编号id int N 主键、AI 用户编号userid int N题集编号setid int NCREATE TABLE`yx_user_select_set`(`id`INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `userid`INT NOT NULL,`setid`INT NOT NULL)ENGINE=MYISAM;新建表:yx_user_answer_record表yx_user_answer_record栏目名称字段名类型可否为空说明记录编号id int N 主键、AI问题编号questionid int N 与yx_question表的questionid关联答题结果check tinyint N 0:错误;1:正确答题人userid int N 与yx_user表的userid关联答题时间answertime datetime NCREATE TABLE`yx_user_answer_record`(`id`INT NOT NULL AUTO_INCREMENT PRIMARY KEY,`questionid`INT NOT NULL,`check`TINYINT NOT NULL,`userid`INT NOT NULL,`answertime`DATETIME NOT NULL)ENGINE=MYISAM;新建表:yx_admin表yx_admin栏目名称字段名类型可否为空说明管理员编号adminid int N 主键、AI管理员名adminname varchar(20) N管理员密码password varchar(32) N管理员类型roleid smallint N 默认:0上次登录时间lasttime datetime N 默认:0000-00-0000:00:00 上次登录ip lastip varchar(15) N 默认:0管理员邮箱email varchar(40) N 默认:0管理员真实姓名realname varchar(50) NCREATE TABLE`yx_admin`(`adminid`INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `adminname`VARCHAR(20)NOT NULL,`password`VARCHAR(32)NOT NULL,`roleid`SMALLINT NOT NULL DEFAULT'0',`lasttime`DATETIME NOT NULL DEFAULT'0000-00-00',`lastip`VARCHAR(15)NOT NULL DEFAULT'0',`email`VARCHAR(40)NOT NULL DEFAULT'0',`realname`VARCHAR(50)NOT NULL)ENGINE=MYISAM;新建表:yx_admin_role表yx_admin_role栏目名称字段名类型可否为空说明类型编号roleid smallint N 主键、AI 类型名称rolename varchar(50) N类型描述description text N类型状态enabled tinyint(1) N 0:不可用;1:可用CREATE TABLE`yx_admin_role`(`roleid`INT NOT NULL AUTO_INCREMENT PRIMARY KEY,`rolename`VARCHAR(50)NOT NULL,`description`TEXT NOT NULL,`enabled`TINYINT(1)NOT NULL)ENGINE=MYISAM;创建模块目录:PHPCMS v9框架中的模块,位于phpcms/modules目录中每一个目录称之为一个模块,如果要创建一个模块,只要在phpcms/modules 目录下创建文件夹并放入你的控制器类就可以了。
PHPCMS视频教程_PHPCMS二次开发_组成
投 票 管 理 系 统
广 告 管 理 系 统
评 论 管 理 系 统
附 件 管 理 系 统
全 站 搜 索 系 统
பைடு நூலகம்支 付 管 理 系 统
PHPSSO
内容管理系统
用于内容发布管理,相关设置,栏目管理,模型管理 等。
门户级站点关系系统
V9 实现了技术标准统一,能够互联互通,实行集群 化管理,相对一致的多网站运行和服务规范,从而实 现统一的分级管理,信息共享,单点登录等功能。
会员管理系统
主要用于管理系统注册用户,配置系统用户组及会员 模型管理等。
管理员/会员权限管理系统
用于控制站点内的不同用户类型可以使用的功能及相 关的授权操作等。
投票管理系统
投票功能提供了两种投票类型,第一个是单选投票。 第二种是多选投票。网站编辑人员可以根据实际的需 求,选择类型进行操作。
广告管理系统
发布点管理系统
通过发布点可将各子站 点内容发布到不同的服 务器上,轻松实现服务 器集群部署。以实现负 载的分离,更加符合大 访问量网站的需求。为 用户提供更好的用户体 验。
PHPSSO
——SSO单点登录系统 在接入PHPSSO的多个应用系统中,用户只需要登录 一次就可以访问所有相互信任的应用系统。PHPSSO 可以将这次主要的登录映射到其他应用中用于同一个 用户的登录的机制,这也是目前比较流行的企业业务 整合的解决方案之一。
全站搜索系统
允许用户便利快捷的搜索站点内的各类资源信息。
支付管理系统
V9系统集成了多种常用的支付接口,只需要根据自 身网站情况进行简单设置即可。
访问统计管理系统
V9系统集成了CNZZ站点统计功能。
欢迎访问我们的官方网站
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
推送前首页效果
2019-10-9
感谢你的欣赏
推送后首页头条效果
PHPCMS网络培训课程 --- 内容发布与管理篇
7
推送到推荐位,如下图所示:
勾选要推荐到的推荐位
2019-10-9
感谢你的欣赏
推荐位管理
PHPCMS网络培训课程 --- 内容发布与管理篇
8
批量移动 实例:军事新闻 里二条信息批量移动至 社会 栏目,操作步骤,如下图所示:
2019-10-9
感谢你的欣赏
PHPCMS网络培训课程 --- 内容发布与管理篇
9
批量移动以后信息将进入 社会 栏目频道下,如下图所示:
说明: 批量移动是从一栏目移动至另一栏目,原栏目数据不再保留!而推送是标题和链接地址复制一份 至目标赏
PHPCMS网络培训课程 --- 内容发布与管理篇
2019-10-9
感谢你的欣赏
PHPCMS网络培训课程 --- 内容发布与管理篇
5
接上一页,继续发文章时,选择介绍,如下图所示:
2019-10-9
此处推荐位与推荐位管理相对应
可选择已经存在投票,亦可以新增加投票
感谢你的欣赏
PHPCMS网络培训课程 --- 内容发布与管理篇
6
一、信息的推送与批量移动操作 V9可以把文章推送到相关位置,但有二个前提: a. 后台事先指定推荐位(可指定推荐位所属模型,甚至指定特定栏目) b. 前台模版加入调用推荐位信息的代码 下面我们以向首页 “首页头条推荐 ” 推送内容为例子,进行介绍,看下图:
PHPCMS 使用指南及二次开发向导 --- 内容发布与管理篇
2019-10-9
感谢你的欣赏
1
PHPCMS网络培训课程 --- 内容发布与管理篇
2
• 内容发布篇
1. 内容添加与修改 2. 内容的推送与批量移动 3. 内容相关更新
2019-10-9
感谢你的欣赏
PHPCMS网络培训课程 --- 内容发布与管理篇
3
一、发布与修改内容 下面我们以 一个实例来讲解V9内容的发布与管理,如下图所示: 实例:向 军事新闻 栏目添加内容。栏目模型默认为文章模型,该模型的字段,大家可以查看模型相关章节。
2019-10-9
感谢你的欣赏
PHPCMS网络培训课程 --- 内容发布与管理篇
4
下面简单介绍一下,添加信息时,有几项的使用,如下图所示:
10
三、相关更新操作
2019-10-9
感谢你的欣赏
Thank you!
2019-10-9
感谢你的欣赏
11