phpcms V9 框架目录结构

By admin in 计算机教程 on 2019年7月7日

1.给专题添加文章时,可以选择类别:

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}//相当于 或者                 

图片 1

图片 2

2.给文章模型、图片模型、下载模型的栏目下添加文章内容时,默认不能选择类别:

图片 3

3.文章模型、图片模型、下载模型的栏目下添加文章内容时,能不能像专题一样可以选择类别?

图片 4

图片 5

4.如,要完成如下功能:在PHPCMS的文章管理列表,要实现在文章标题前显示文章类别,这样就可以直接在文章列表里看到类别,不需要点击进入编辑页面才可以看到

图片 6

完成方法:打开
phpcms\modules\content\templates\content_list.tpl.php 文件,找到

<td>   <?php   if($status==99) {    if($r['islink']) {     echo '<a href="'.$r['url'].'" target="_blank">';    } elseif(strpos($r['url'],'http://')!==false) {     echo '<a href="'.$r['url'].'" target="_blank">';    } else {     echo '<a href="'.$release_siteurl.$r['url'].'" target="_blank">';    }   } else {    echo '<a href="javascript:;" onclick=\'window.open("?m=content&c=content&a=public_preview&steps='.$steps.'&catid='.$catid.'&id='.$r['id'].'","manage")\'>';   }?>><?php echo $r['title'];?></a> <?php if($r['thumb']!='') {echo '<img src="'.IMG_PATH.'icon/small_img.gif" title="'.L('thumb').'">'; } if($r['posids']) {echo '<img src="'.IMG_PATH.'icon/small_elite.gif" title="'.L('elite').'">';} if($r['islink']) {echo ' <img src="'.IMG_PATH.'icon/link.png" title="'.L('islink_url').'">';}?></td>   <td align='center' title="<?php echo L('today_hits');?>:<?php echo $hits_r['dayviews'];?> <?php echo L('yestoday_hits');?>:<?php echo $hits_r['yestodayviews'];?> <?php echo L('week_hits');?>:<?php echo $hits_r['weekviews'];?> <?php echo L('month_hits');?>:<?php echo $hits_r['monthviews'];?>"><?php echo $hits_r['views'];?></td>   <td align='center'>   <?php   if($r['sysadd']==0) {    echo "<a  username'])."&pc_hash=".$_SESSION['pc_hash']."' >".$r['username']."</a>";     echo '<img src="'.IMG_PATH.'icon/contribute.png" title="'.L('member_contribute').'">';   } else {    echo $r['username'];   }   ?></td>

在其前面添加如下几行代码即可:

 <?php $TYPE = getcache('type_content','commons');?> 【<?php echo $TYPE[$r['typeid']]['name'];?>】 

合并到一块如下:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 澳门金沙30064在线网站 版权所有