{fbmip:fixed type="top" id="mipfixed" dataSlide="header-fixed-slide" class="fb-header-fixed"}
{fbview:mainmenu menuItemCode='$menuItemCode'/}
{/fbmip:fixed}
{fbmip:img fit='cover' src="$banner2['img_url']" alt="$banner2['title']"/}

飞鸟建站系统目录结构说明

  • 发布时间:
  • 浏览:559
  • 来源:平步科技官网

飞鸟建站系统是基于ThinkPHP5开发的。

文件夹结构如下:


首先,system文件夹是ThinkPHP5的核心代码。

extend文件夹是扩展功能类,扩展了飞鸟建站的Controller层的子类,还有支付类、微信开发类、小程序开发类。

app文件夹是核心项目文件夹,核心的管理后台、文章管理、广告管理、商城管理以及用户权限管理,都是在这里实现的。

addons文件夹是插件文件夹,非核心的功能,则以ThinkPHP的插件来实现的。

public文件夹是公共资源类,包括CSS、JS以及图片等文件。

template文件夹是模板类,自定义的前台网站模板都放在该文件夹下。

uploads文件夹,是根路径为apache根路径的时候的文件上传路径;说明一下,如果apache指向到public文件夹的话,文件上传的根路径在public/uploads文件夹中。

根路径下的文件说明

根路径下的文件一般来说是没有用的,因为推荐将apache指向到public文件夹。

但如果将apache指向到根路径的话,根路径下的文件就有用了。

这里最重要的是README.md文件,这个文件是git的说明文件。想要熟悉飞鸟建站系统,这个文件是需要读一读的。

app下的文件和文件夹

app文件夹是应用的文件夹,主要的业务代码都在这个文件夹下。

config.php文件:是Thinkphp的配置文件,基本是不需要修改的,其中的值可以使用 config 全局函数进行读和写。

route.php文件:是主路由文件,定义了访问什么url可以指向到哪个controller层的哪个方法。

common.php文件:定义了应用的通用函数。

其他的文件夹则是各种功能模块。

app下的应用结构

app下提供了前后台所有页面的功能。

管理后台页面,controller只有一个 admin/controller/Admin.php,管理后台所有的页面请求都指向到这一个类中的index方法,然后根据url的规则会渲染不同的页面,所有被渲染的页面都在各自功能模块下的view/admin/文件夹下。

例如请求: http://域名/admin/article/articlePublish/cid-20,这个地址

首先会访问Admin.php的index方法,然后会根据路径渲染  app/article/view/admin/articlePublish.html 文件。

cid-20,得到了参数cid 的值为 20

管理后台的ApiAdmin接口类

这时候只是渲染了页面,Admin.php的index方法只处理了基础的权限,并没有处理任何数据。

之后,页面将通过VUE方式加载数据,调用的方法均是 ApiAdmin开头的类及其方法。

可以看到app下各个模块的controller下有很多的ApiAdmin开头的类,这些都是用于管理后台VUE调用数据的接口类。

所有这些类均继承自AdminApiBase类。

调用这些类的时候,ajax请求的时候必须在headers中传递 terminal  access-key  uid  和  access-token 这四个参数。

headers="{'terminal':'pc','access-key':authInfo.access_key,'uid':authInfo.uid,'access-token':authInfo.access_token}"

飞鸟建站的所有请求都必须传递这四个参数,这个说明将另外说明。

app下的前台实现

各个模块的非Admin.php 和 非Api开头的类,均是为了前台页面显示而设计的类,均是各个功能的controller层代码。

前台的模板页面

前台的模板页面均在 template 文件夹下,根据管理后台选中的模板而加载具体模板。