1、在phpcms后台怎么增加模块
【1】创建模块目录
通过前面的学习,我们已经知道phpcms V9框架中的模块位于phcms/moles目录中,每一个目录称之为一个模块。
如果要创建一个模块,只要在 phpcms/moles 目录下创建文件夹并放入你的控制器类就可以了。
例如我要开发一个叫做test的模块,那么首先在 phpcms/moles 目录下创建文件夹,并将其命名为test。
观察其他模块的结构,可知test模块的标准结构通常应该也是这样的:
classes 为模块类库包
functions 为模块函数库包
templates 为模块模板包,通常放置含有权限控制的控制器模板,也就是后台模板。
如果你的模板有自定义的前台模板,你需要在phpcms\templates\default目录下创建一个你的模块名目录来放置前台模板,“default”为你的风格包名称,我们默认是用default。
【2】创建模块控制器类
上一步,我们已经创建好了一个名为test的模块,接下来我们继续为这个模块添加两个控制器类。
phpcms V9 的控制器就是模块的类文件,位于phpcms/moles/模块名/目录下面。类文件名称就是控制器名+.php,例如一个名为mytest的控制器,那么它的命名为mytest.php即可。控制器类默认继承系统的函数库,可以直接使用。
控制器类的类名称与控制器文件名必须相同。
控制器类文件包含两种形式:
1.前台浏览(不含权限控制),mytest.php 控制器
在phpcms/moles/test 目录下,新建文本文件,命名为mytest,修改文件类型为php, 用Notepad++打开编辑内容为:
1 <?php
2 defined('IN_PHPCMS') or exit('No permission resources.');
3 class mytest
4 {
5 function __construct(){}
6 public function init()
7 {
8 $myvar = 'hello world!';
9 echo $myvar;
10 }
11 public function mylist()
12 {
13 $myvar = 'hello world! This is an example!';
14 echo $myvar;
15 }
16 }
17 ?>
其实,这个控制器的URL访问方法前面已经介绍过,请参见《phpcms V9 MVC模式与URL访问解析》
http://www.abcd.com.cn/phpcms/index.php?m=test&c=mytest等价于
http://www.abcd.com.cn/phpcms/index.php?m=test&c=mytest&a=init。
没有填写“a”值的情况下,默认调用init方法。
为什么这样子?请把《phpcms V9 MVC模式与URL访问解析》再读一遍。
2.后台管理(含权限控制),mytest_admin.php 控制器
后台控制器需要加载admin模块下的admin类,并继承该类。需要注意的是因为添加的控制器类继承了其它的类,要小心控制器类的方法名不要和该类中的方法名一样了,否则会造成影响,具体请查看admin类中有哪些方法。
在phpcms/moles/test 目录下,新建文本文件,命名为mytest_admin,修改文件类型为php, 用Notepad++打开编辑内容为:
1 <?php
2 defined('IN_PHPCMS') or exit('No permission resources.');
3 pc_base::load_app_class('admin','admin',0);
4 class mytest_admin extends admin
5 {
6 public function __construct() {}
7 public function init()
8 {
9 $myvar = 'oh,i am phpcmser';
10 echo $myvar;
11 }
12 }
13 ?>
在控制器中增加模板调用
phpcms 可以实现完全的模板与程序分离,所以在我们的控制器程序中要加载模板,才可以更友好的显示出来。
1.加载前台模板
前台模板文件在phpcms\templates\default\模块名称的目录中,本示例也就在phpcms\templates\default\test中。
加载模板方法如下:
1 // 加载模板方法:
2 include template('test', 'mytest', 'default');
其中,test为模块名称,mytest为模板目录下模板名称,default为风格名称,默认为default。
在上面例子中如果要给mytest.php中init方法加载一个mytest的模板(可以拷贝content模块下的index.html作为替代),如下(所以模板名称为index):
1 public function init()
2 {
3 $myvar = 'hello world!';
4 echo $myvar;
5 include template('test', 'index');
6 }
这时,当我们再通过URL访问该方法的时候也就加载了对应的模板。
2.加载后台模板
后台模板文件在phpcms\moles\模块名称\templates 目录中,本示例也就在phpcms\moles\test\templates中
加载模板方法如下:
// 加载模板方法:
include $this->admin_tpl('mytest_admin_list');
其中mytest_admin_list为phpcms\moles\test\templates中mytest_admin_list.tpl.php。
注意:此处模板必须以.tpl.php 作为后缀
在上面例子中如果要给mytest_admin.php中init方法加载一个mytest_admin_list的模板,如下:
1 public function init()
2 {
3 $myvar = 'oh,i am phpcmser';
4 echo $myvar;
5 include $this->admin_tpl('mytest_admin_list');
6 }
加载模板部分内容也可以参见系统框架源码content模块 phpcms\moles\content content.php文件的实现。
【3】创建数据库模型类
至此,已经明确,各模块的数据库模型位于:phpcms/model/ 目录下。
数据模型文件的命名规则建议为:数据表名称 + '_model.class.php'
如果在我们的创建的模块中我要使用一个数据库“test”,首先需要建立一个数据库模型文件,文件名称为'test_model.class.php'
内容如下:
1 <?php
2 defined('IN_PHPCMS') or exit('No permission resources.');
3 pc_base::load_sys_class('model', '', 0);
4 class test_model extends model
5 {
6 public function __construct()
7 {
8 $this->db_config = pc_base::load_config('database');
9 $this->db_setting = 'default';
10 $this->table_name = 'test';
11 parent::__construct();
12 }
13 }
14 ?>
书写数据库模型类注意一下几点:
1. 数据库模型类名称必须与文件名称相同。
2. 必须继承与数据库模型基类model。
3. $this->db_setting = 'default'为数据库配置文件中配置数据库链接池名称,默认为default,一般情况下不需要修改。
4. $this->table_name = 'test'为数据表名称。
这样我们就建立好一个数据库模型类。那么,怎么使用呢?
在模块的控制器中使用(加载方式):
$this->db = pc_base::load_model('test_model');
具体如下:
1 <?php
2 defined('IN_PHPCMS') or exit('No permission resources.');
3 class mytest
4 {
5 private $db;
6 function __construct()
7 {
8 $this->db = pc_base::load_model('test_model'); // 加载数据库模型
9 }
10 public function init()
11 {
12 $myvar = 'hello world!';
13 echo $myvar;
14 include template('test', 'index');
15 $result = $this->db->select(); // 调用select方法
16 var_mp($result);
17 }
18 public function mylist()
19 {
20 $myvar = 'hello world! This is an example!';
21 echo $myvar;
22 }
23 }
24 ?>
其中$this->db中所支持的方法请参照父类 phpcms/libs/classes/model.class.php 中方法。
2、给我推荐一个CMS系统,模块要全!
php168
dedecms
帝国cms
3、织梦cms模版模块怎么用?
织梦内容管理系统(DedeCms) 以简单、实用、开源而闻名,是国内最知名的PHP开源网站管理系统,也是使用用户最多的PHP类CMS系统, 在经历了二年多的发展,目前的版本无论在功能,还是在易用性方面,都有了长足的发展和进步,DedeCms免费版的主要目标用户锁定在个人站长,功能更专 注于个人网站或中小型门户的构建,当然也不乏有企业用户和学校等在使用本系统。
通常开发者为了能快速开发网站,会使用网上的织梦模板资源。当然,熟悉织梦的人不需要看织梦模板使用教程,但对于新手他们需要。
从织梦官方下载DedeCMS-V5.7-UTF8-SP1(这是最新UTF8版本)
解压DedeCMS-V5.7-UTF8-SP1压缩包,并把uploads文件夹的文件全部上传服务器,通常放在wwwroot或www文件夹根目录上

在浏览器打开http://你的域名(XX.com)/install/index.php,然后就开始安装了。根据安装提示一步一步的往下安装

织梦安装完成,打开http://XX.com/login.php,登陆就能进入后台对网站内容进行管理了。关于后台管理操作,这里我就不多说了。
接下来就说一下套用模板了。
首先解压网上下载下来的模板资源。
根据说明,按照步骤执行。

另外,有些模板可以直接把所有模板文件(包括文件夹,.html文件)直接上传服务器覆盖根目录里templets文件夹内原来的文件
4、什么是cms模板
cms模板是什么?首先要了解cms,cms是网站内容管理系统,比如phpcms,dedecms,phpwind,discuz,wordpress,这些开源的cms都是可以用来自助建站的,但难免的用这些cms的人很多,每个人使用cms的样式都不希望是一样的,所以每个人根据自己想要的风格就制成的自己的模板,因为这些cms都是模板与程序很好的分离,模板不会影响程序的,所以就出现的cms模板的流行.
推荐个cms模板下载的地方:http://www.mianfeimoban.com/cms_moban/
5、cms模板通用?
肯定是不通用的!程序结构和标签解释都不一样。
如果是文章类型的,DEDE很不错,其它的貌似没感觉DEDE好,不过,DEDE运行效率较高。
6、CMS模板是什么
CMS是Content Management System的缩写,意为"内容管理系统",它具有许多基于模板的优秀设计,可以加快网站开发的速度和减少开发的成本。CMS的功能并不只限于文本处理,它也可以处理图片、Flash动画、声像流、图像甚至电子邮件档案.
模板,你可以简单的理解成皮肤,网站的风格和皮肤。
7、Dede CMS核心模块都有哪些


8、CMS种类有那些
CMS是Content Management System的缩写,意为"内容管理系统",它具有许多基于模板的优秀设计,可以加快网站开发的速度和减少开发的成本。CMS的功能并不只限于文本处理,它也可以处理图片、Flash动画、声像流、图像甚至电子邮件档案。
你说的新闻发布系统属于 cms.
网店系统就属于cms的加强功能了, 一般的cms不带这些功能.
还有一些系统增加了"企业黄业"、“房产”“供求(租房、出售二手)”、“下载”“影视”等等。
其实严格来说单纯的“cms”只有文章+图片的功能。其他的功能都是在文章+图片的基础上稍微变化改进的。
热门CMS介绍:
2010年国内最常用的PHP+MySql免费CMS系统大全
1. DEDE -这是一款国内开源的cms,作者是一个个人,能做出如此功能的cms,是相当不错的。2007版功能十分强大,希望能改善之前数据量一大,更新静态页就很慢的缺点。因为开源,有较多的玩家和拥护者。非常适合有一定编程基础的站长。 2. phpcms-一个综合的网站管理系统,由PHP+MYSQL构架全站生成html,能够快速高效地应用于LINUX和WINDOWS服务器平台,是目前中国LINUX环境下最佳的网站管理应用解决方案之一。据传被酷6收购。 3. 帝国网站管理系统-Ecms全称为”帝国网站管理系统”,英文译为”Empire CMS”简称”Ecms”.Ecms是基于B/S结构,且功能强大而易用的网站管理系统.是一个经过完善设计的适用于Linux/windows/Unix等环境下高效的网站解决方案。 4. php168 -PHP168整站系统,代码全部开源,可方便的进行二次开发,功能模块可以自由安装与删除,个人用户免费使用。系统频道模块很多,适合作个人门户网站。较多页面没有生成静态页。如果你想建站,就义无反顾的选择它吧!!! 5. HBcms :一个以PHP官方推荐的PEAR+SMARTY技术架构的cms,比较容易上手,适合没经验的新人做网站。没有下载,分类信息等模块,适合做文章为主的网站。全站生成静态页,默认附带了几套模板,可以方便的更换模板。个人企业都免费,无需授权。 6. SupSite-一款将论坛资源自动转换成门户网站的php程序系统,使用SupeSite,并利用你现有的论坛,你将自动拥有一个功能完备的,资源丰富的站点系统;由论坛变成网站,一切都是自动完成,你不需要任何干涉。让你轻轻松松实现建立网站的目的。 7. 曼波-MAMBO,一个国外的CMS系统,功能很强大,支持添加很多组件,模块;拥有丰富的模板.Mambo是一个网站内容管理系统(CMS),它是网站的后台引擎,使网站内容的创建、管理和共享更加简易。Mambo十分强大,但官方网站也承认,它不是典型的“门户”网站解决方案。 8. Joomla! 是一套在国外相当知名的内容管理系统,2007年开源cms第一名!Joomla!是使用PHP语言加上MySQL数据库所开发的软件系统,可以在Linux、Windows、MacOSX等各种不同的平台上执行。操作接口除了美观之外,也花了很多心力在设计这些接口的简易操作性。但初次使用者,需要花一点时间学习一下操作的方式,才能运用自如。。 9. Drupal-Drupal是一个强大的软件,它可以让个人或社区使用者很容易地发表、管理并组织一个网站里大量且多样的内容。已经有许多个人和组织采用Drupal来建立各种不同的网站。Drupal是一套采用GPL授权的开放源码软件,是由数以千计的使用者和开发人员所共同维护和开发的。 10. WordPress - 是一款基于PHP和MySQL的Blog软件,但是它也可以当作简单的cms系统来用。通过它可以快速而简便的搭建属于你自己的Blog(网站)平台。简而言之,这个Wordpress就相当于咱们用来搭建论坛的那些程序,比如用在自留地上的雷傲,还有别的比如PHPBB等等…Wordpress因为它的安装简单和可扩展性好几乎已经成了独立搭建Blog平台的第一选择。Wordpress还有一个MU就是多用户的版本,支持多用户的Blog系统。
2010年国内最常用的ASP免费CMS系统大全 1.动易--这套是国产AspCMS中非常强大的系统,一路走来,动易不断完善,而且也不断加强功能,包括个人版,学校版,政府版,企业版,后台包括的功能,信息发布,类别管理,权限控制,信息采集,而且跟第三方的程序,比如论坛,商城, blog可以完美结合,基本上可以满足一个中大型网站的要求,但Asp和Access的的局限性,还有本身功能Dll的限制,使得免费版差不多成鸡肋。这套系统比较适合非专业人士使用,在使用操作方面做的非常人性话,而如果说想自己修改或者二次开发的话就有点免为其难了。 2.风讯-- 风讯的系统功能强大,自由度高,是现在人气比较高的系统之一,可以根据自己的想法做出一个网页从而建立一个有自我风格的网站,更新速度快,一直有新的版本出现,现在又开放采集、下载、投稿、图片整站管理系统,第三方整合等功能,开源是它最大特点,希望保持。然后缺点就是后台人性化差了一点,上手有点难度,而且连一套默认的模板都没有,因为自由度太高了,让一些新手更难上手,还有就是免费版的生成静态发布的效率不高。 创力--- 创力是一套无任何文件加密,不需要注册组件,不需要绑定域名,经过完善设计、精心打造的一个适用于各种服务器环境的安全、稳定、快速、强大、高效、易用、优秀的网站建设解决方案。系统功能齐全,集成文章、下载、图片、影视、商城、留言、用户等大模块,并可无限制N个与文章、下载、图片等模块相同的的模块,每个模块下更可无限栏目分类,加上Rss订阅、公告、广告、统计、关键字、友情链接、JS代码、站点地图……等等,综合来说是一套不错的网站系统。 3.JTBC-- JTBC也是新出不久的一套可对现有模块进行扩充与克隆的网站系统核心,采用UTF-8编码,是目前ASPCMS界中唯一一款真正意义上做到代码与程序全脱离的程序,似乎采用了xml的散存储技术,而且在代码与程序脱离的技术上,又加人了语言与代码脱离,语言与程序脱离的两两脱离关系,基于这种特性,JTBC就具有了非常强大的可扩充性和可二次开发性,目前具有文章系统,下载系统,商城系统三大传统模块,有友情链接,在线支付,网站留言,网站评论等常规管理项目,JTBC可能对于未上手的人来说是一套很头大的系统,但对于熟悉的人而言使用起来非常有效率,做企业网站与其他网站均可。 4.TSYS---对于一个免费开源,没有版权的CMS来说我们也没有什么可要求的!在TSYS的各个版本中均没有出现过重大的安全漏洞而且对于目前1.1来说已经是很完善成熟的了,TSYS和一般的Asp 的CMS不大一样,他的功能并非由本身而定,而是根据使用者的能力而定。使用者越厉害 TSYS本身也可以变的更厉害。强大的诸如碎片等的信息管理,可以将信息在显示的时候重新整合,说白了就是只有对TSYS非常熟悉的人才可以将TSYS的优势发挥出来,因此,光就这点也就注定了TSYS流行不起来,除非具有人性话操作的修改版本出来。 5.乔客-- 这个系统已经很久了,但好像一直存活在动易和风讯两者之间,现在3.0的Joekoe CMS出来了,但另我比较失望,相比免费版的1.2,功能是增强了,但也Dll,这个可能也是国产程序的一个特色罢了。它本身已经是一个融合度非常高的系统,有商城,新闻,下载,论坛,留言,影视,博客圈等,感觉有那么点WEB2.0 的味道,不想怎么修改的朋友直接拿去就可以用了。 6.科汛--科汛是一套新出的网站系统,其功能非常强大,目前主流网站的功能在其系统内均能实现,具有强大的标签(JS)管理功能,个性化的标签(JS)参数配置功能,做一个个性的大站不再是梦想。网站整体开源,具有文章模块,图片模块,下载模块,动漫模块,音乐模块,会员模块,采集模块等等,功能非常不错。 7.新云--新云最初做的是下载站,后来转为多模块的系统,最近发现有不少的网站都在使用。由文章、下载、商城、留言、用户管理五大功能模块和广告、公告、连接、统计、采集、模板管理、数据库管理等多个通用模块组成,而且功能确实有一些值得称道的地方,不过又是DLL的,免费版有不少的限制,但对一个简单基本的网站来说,功能够用了。
9、网站cms 中模块和模板的区别?
拿pageadmin cms来说吧
模板就是一个CSS文件,用来控制显示样式
模块就是一个功能,比如调用文章、产品、图片这些资料的