phpcms v9框架的目录结构分析:  
  
了解v9框架的目录结构,有助于帮助我们快速建立起对v9框架的一个整体认识  
  
打开"mycms"项目,有如下文件和目录  
  
使用协议说明文档、英文版的用户手册,这两项不是项目所必须的,可暂时将其删除  
  
|-----api  接口文件目录  
|-----caches 缓存文件目录  
    |-----configs 系统配置文件目录  
        |-----database.php  数据库配置文件  
        |-----route.php     路由配置文件  
        |-----system.php    系统配置文件  
        |-----cache.php     缓存配置文件  
    |-----configs_*         系统缓存文件目录  
        |-----configs_commons/caches_data   主要用来存放后台设置的配置信息  
            |-----category_content.cache.php栏目与站点映射所对应的配置文件  
            |-----category_content_1.cache.php站点1下所有栏目的详细配置信息  
            |-----category_item_1.cache.php 文章模型下各栏目所对应的数据量  
            |-----category_item_2.cache.php 下载模型下各栏目所对应的数据量  
            |-----category_item_3.cache.php 图片模型下各栏目所对应的数据量  
            |-----keylink.cache.php     关联链接配置缓存文件  
            |-----model.cache.php       三大模型配置缓存文件  
            |-----mood_program.cache.php    表情配置缓存文件  
            |-----position.cache.php    推荐位配置缓存文件  
            |-----poster_template_1.cache.php广告位模板配置缓存文件  
            |-----sitelist.cache.php    站点列表配置文件,主要缓存所有站点的基本配置信息  
            |-----type_content.cache.php    多个站点下的类别配置信息  
            |-----type_content_1.cache.php  当前站点下类别配置信息缓存文件  
            |-----urlrules.cache.php    url规则配置信息缓存文件  
            |-----urlrules_detail.cache.php url规则详细配置信息缓存文件  
            |-----special.cache.php     专题配置信息缓存文件  
            |-----role.cache.php        角色配置缓存文件  
            |-----link.cache.php        友情链接缓存文件  
        |-----configs_model/caches_data  
            |-----content_form.class.php    生成表单的类库缓存文件  
            |-----content_input.class.php   入库时,对表单数据进行验证的类库缓存文件  
            |-----content_output.class.php  对从数据表中查询出来的数据进行处理的函数  
            |-----content_update.class.php  对要更新的数据进行有效性验证的函数  
            |-----model_field_1.cache.php   文章模型所有模型字段的缓存信息  
            |-----model_field_2.cache.php   下载模型所有模型字段的缓存信息  
            |-----model_field_3.cache.php   图片模型所有模型字段的缓存信息  
  
              
|-----phpcms                        phpcms框架主目录  
       |-----languages                  框架语言包目录  
       |-----libs                   框架主类库、主函数库目录  
        |-----classes  
            |-----form.class.php    表单生成类库文件  
            |-----application.class.php 应用程序类库文件  
            |-----image.class.php       图片处理类库文件  
            |-----attachment.class.php  附件处理类库文件  
            |-----param.class.php       URL参数处理类库文件  
        |-----functions  
            |-----global.func.php       公共函数库文件  
            |-----extension.class.php   扩展函数库文件  
       |-----model                  框架数据库模型目录  
        |-----content_model.class.php       内容模型文件  
        |-----admin_model.class.php     管理员模型文件  
        |-----attachment_model.class.php    附件模型文件  
       |-----modules                    框架模块目录  
        |-----admin             admin模块   
            |-----index.php         index.php控制器文件  
        |-----content               content模块  
            |-----classes           content模块通用类库  
            |-----fields            content模块模型字段  
            |-----functions         content模块通用函数库  
            |-----templates         content模块后台模板文件  
            |-----index.php         index.php控制器文件  
       |-----templates                  框架系统前台模板目录  
        |-----default               默认的模板风格  
            |-----content           content模块模板目录  
                |-----category.html 频道页模板文件  
                |-----list.html     列表页模板文件  
                |-----show.html     内容页模板文件  
            |-----config.php        模板配置文件  
|-----phpsso_server                 phpsso主目录  
|-----statics                       网站素材文件目录  
    |-----css                                   css文件  
        |-----images                    images文件  
        |-----js                    js文件  
|-----uploadfile                    上传附件  
|-----admin.php                     后台入口文件  
|-----index.php                     前台入口文件  
  
  
  
  
phpcms v9中的url路由规则:  
  
  
浏览器中输入 http://www.mycms.com/index.php?m ... ;a=list&catid=1  回车时,默认情况下会找到  
phpcms                  框架主目录  
|-----modules               模块目录  
    |-----content           content模块  
        |-----index.php     index.php控制器中list方法来显示列表页面  
              
  
到底是不是呢?我们打开index.php控制器文件,并在index方法中添加一些代码,运行输出,证明确实如我们所料  
  
我们可以将浏览器中的url归纳如下:  
http://域名/入口文件?m=模块名&c=控制器&a=方法名&catid=参数值  
  
  
当我们在浏览器中输入http://www.myshop.com/index.php 后面没有跟任何参数, 回车时,默认情下会将首页显示出来  
  
这是因为phpcms v9为我们指定了一个默认执行的模块、控制器和方法  
  
默认控制器的设置在 "caches/configs/routes.php" 配置文件中进行设置的,我们可以重新设置默认的控制器  
  
六、栏目的添加  
  
1、pc设计者认为,栏目详情页的数据都应该属于一个模型,所以在添加栏目时,必须给栏目指定一个模型,至于要选择什么模型,完全取决于栏目详情页要显示什么类型的内容  
   详情页:文章信息类的内容     文章模型  
   详情页:图片类信息            图片模型  
   详情页:下载东西         下载模型  
   详情页:播放视频         视频模型  
  
2、如果以上模型还不能满足项目的需要,那么我们还可以自定义模型,通常情况下,一个网站是由多种模型的数据来组成的  
  
3、栏目添加选项:  
  
栏目名称:在网站静态化时,创建一个以此目录名命名的目录来存放当前栏目下相关的模板文件  
  
4、pc的设计者认为,每个栏目会对应当前所选模型的三个模板文件:  
  
频道页模板文件  
  
列表页模板文件  
  
内容页模板文件  
  
  
这些模板文件所在位置:phpcms/templates/default/content/ 目录下,如果想修改模板文件,只需要到此目录下找到对应的模板文件进行修改就可以了  
  
频道页:category_*.html  
列表页:list_*.html  
内容页:show_*.html  
  
至此,栏目各页面与模型的三个模板文件对应起来了  
  
注意:频道页面的显示是有条件的(当前栏目必须有子栏目才可以)  
  
  
5、栏目添加成功后,栏目信息被存储到了v9_category数据表中,同时还被缓存到了phpcms/caches/caches_common /category_content.cache.php文件中,这个缓存文件非常重要,一定要引起足够的重视,前台的很多数据都是直接从此缓存文件中获 取来的  
  
  
  
七、项目的部署:  
  
1、素材文件:  
  
statics  
    |-----images  
        |-----cmsimages     项目图片文件  
    |-----js  
        |-----cmsjs     项目js文件  
    |-----css  
        |-----cmscss        项目css文件  
  
phpcms  
    |-----templates  
        |-----new       新的模板风格  
            |-----content   内容模块模板文件  
                |-----category.html 频道页模板文件  
                |-----list.html     列表页模板文件  
                |-----show.html     内容页模板文件  
            |-----config.php        添加模板文件的配置  
          
        或者  
  
        |-----default  
            |-----content   内容模块模板文件  
                |-----category_shetu.html   频道页模板文件  
                |-----list_shetu.html       列表页模板文件  
                |-----show_shetu.html       内容页模板文件  
            |-----config.php            配置新添加的模板文件  
  
  
注意:模板文件的命名规范  
  
  
2、进入后台,将栏目与模板文件对应起来  
  
3、常量的定义:phpcms/base.php文件  
  
4、系统类库、函数库、模型文件及配置文件的加载  
  
pc_base::load_sys_class();//加载系统类库  
pc_base::load_sys_func();//加载系统函数库  
pc_base::load_model();//加载模型  
pc_base::load_config();//加载配置文件或配置选项信息  
pc_base::load_app_func();//加载应用程序函数库  
pc_base::load_app_class();//加载应用程序类库  
  
全局范围可用,也可以直接在模板文件中使用,在二次开发时,很有用  
  
5、模板语法:  
  
(1)常量表示:  
  
{JS_PATH}//相当于 或者

转载于:https://www.cnblogs.com/chen-lhx/p/4138129.html

phpcms v9框架的目录结构分析相关推荐

  1. PHPCMS V9 框架代码分析(入口程序)

    PHPCMS是采用MVC设计模式开发,基于模块和操作的方式进行访问,采用单一入口模式进行项目部署和访问,无论访问任何一个模块或者功能,只有一个统一的入口. 入口程序是在前期处理用户请求的引导程序.它是 ...

  2. PHPCMS后台框架实现思路

    PHPCMS后台框架实现思路[原创] 时间 2014-11-27 10:12:19 极客头条 原文  http://blogs.zmit.cn/3589.html 1.打开后台入口文件admin.ph ...

  3. PHPCMS V9 学习总结(转)

    转自:http://www.cnblogs.com/Braveliu/p/5074930.html 在实现PHPCMS网站过程中,根据业务需求,我们遇到很多问题,特此总结如下,以便大家参考学习. [1 ...

  4. phpcms V9的各种功能总结

    [1]PHPCMS V9系统目录简析 在研究所有问题之前,请先了解一下系统的文件目录结构,具体如下图所示: [2]想修改默认的模板风格怎么办? PHPCMS V9默认的网页模板在phpcms目录下的t ...

  5. phpcms V9 栏目管理

    关于phpcms V9框架系统后台管理之栏目管理,请参见下文的源码分析(添加栏目和修改栏目): 参照添加栏目的界面图示,便于对源代码的理解: 1 <?php 2 3 // 文件路径:phpcms ...

  6. php mvc cms企业站,Phpcms V9程序目录结构及MVC简析

    在之前的文章[Phpcms v9程序目录结构解析]里边详细讲解了Phpcms V9程序目录,今天CMSYOU在这里再次与大家分享一张Phpcms V9程序目录结构图,与大家再次研究Phpcms V9的 ...

  7. PHPCMS V9数据库表结构分析

    PHPCMS V9可以轻松承载百万级的访问数据,最大的功臣就是PHPCMS良好的数据库结构,在数据库的设计方面,一定是下足了功夫. 一般网站的信息量离这个级别相差甚远,但是了解学习一下PHPCMS的数 ...

  8. PHPCMS V9系统配置文件和模板目录

    PHPCMS V9系统配置文件 根目录/caches/configs/ database.php 数据库配置文件 system.php 系统配置文件 route.php 路由配置文件 调用系统配置中的 ...

  9. php 框架获取服务器,Thinkphp 框架基础之源码获取、环境要求与目录结构分析

    本文实例讲述了Thinkphp 框架基础之源码获取.环境要求与目录结构.分享给大家供大家参考,具体如下: 获取ThinkPHP 获取ThinkPHP的方式很多,官方网站(http://thinkphp ...

  10. php ci框架结构,CI框架目录结构分析

    application:具体项目开发目录: system:CI框架代码: user_guide:用户手册,和实现无关,删掉也不影响 index.php:唯一的入口文件,除了这个文件外其他php文件都不 ...

最新文章

  1. R语言dplyr包mutate_if函数修改所有满足条件的数据列的内容实战
  2. CentOS6 英文系统安装ibus
  3. C++11中的bool变量不进行初始化,结果随机,可能是false也可能是true,所以一定要初始化
  4. js实现图片轮播效果
  5. 2019年第十届蓝桥杯 - 省赛 - C/C++大学A组 - G. 日期问题
  6. UVA307 Sticks小木棍
  7. 如何使用两个堆栈实现队列_使用两个队列实现堆栈
  8. 网络流-SAP算法模板
  9. no判断 python yes_Python 内置类型全解析(1)
  10. 突发!程序员!快别闷头学Python了!
  11. 学习python的第五天
  12. VS 2005部署应用程序提示“应用程序无法正常启动( 0x0150002)” 解决方案
  13. Ceres配置(vs2013+Win10)
  14. jQuery checkbox全选问题
  15. 【读书笔记】钢铁是怎么炼成的
  16. 永磁直驱风机matlab模型,直驱永磁最大功率捕捉matlab仿真建模模型(风力发电)...
  17. 数字频率系数测试软件,基于单片机简易数字频率计设计方案汇总
  18. 联合循环——30 正式倒送电
  19. 不同系统下的shell的不同_案例分析 | 不同安装角度下平板集热器阳台壁挂式太阳能热水系统性能分析...
  20. 使用 Docker 搭建 mysql 数据库

热门文章

  1. java冒泡排序菜鸟教程_排序算法总结 | 菜鸟教程
  2. [转]linux 系统 errno.h错误码
  3. 阶段3 3.SpringMVC·_01.SpringMVC概述及入门案例_08.RequestMapping注解的作用
  4. 阶段3 1.Mybatis_08.动态SQL_03.mybatis中动态sql语句-foreach和sql标签
  5. 页面三个txt加载联动省市县的代码,类似淘宝的收货地址的布局
  6. 北京交通大学第六届新生程序设计竞赛题解
  7. HttpClient相关
  8. 高聚合和低耦合的理解
  9. 笔记本无线网卡变身热点供手机Wi-Fi免费通过宽带上网
  10. springmvc中校验框架(hibernate)