October CMS 使用模块化结构,其中大多数编程功能位于 modules 目录或 plugins 目录中。
该 app 目录包含应用程序特定代码。此目录的内容将在本节之后进行更详细的探讨。总之,此区域包含不属于传统插件的业务逻辑。大多数插件功能在此目录中可用。
bootstrap 目录包含加载 Laravel 框架的 app.php 引导脚本。 该目录还包含自定义的 PHP 类自动加载器。 通常,不应修改此目录中的文件。
config 目录包含所有应用程序配置文件. 每个文件控制应用程序如何运行. 配置文件可以根据您的应用程序需求进行更改. 系统更新不会修改配置文件.
plugins 目录封装了扩展 October CMS 核心功能的软件包。插件可以通过引入新功能来修改平台。默认情况下,系统会加载文件系统中找到的所有插件。可以使用 system.disable_plugins 配置参数禁用特定插件。
storage 目录包含日志文件、缓存文件、会话以及由 October CMS 生成的其他文件。它包括几个子目录:
app - 包含应用程序专用存储文件,例如媒体文件、文件上传和自动生成的资源,例如调整大小的文件和组合资产文件。framework - 由 Laravel 框架使用,以存储其生成的文件和缓存。cms - 由 October CMS 平台使用,用于存储其生成的文件和缓存。logs - 包含应用程序的日志文件。temp - 用于存储临时应用程序文件。modules 目录包含 October CMS 的核心软件包,提供在整个系统中都很常见的功能。 默认情况下,模块会根据它们在文件系统中的存在而自动加载。 但是,可以使用 system.load_modules 配置参数来指定要加载哪些模块。 system 模块必须至少加载才能使应用程序运行。
system - 定义了 October CMS 的核心功能,并且是一个必需的模块。cms - 引入了用于渲染前端网站主题的功能。它负责将请求路由到页面、渲染页面以及处理 AJAX 请求。backend - 负责显示后端面板页面。editor - 引入了一个用户界面,用于在后端面板中编辑 CMS 模板。media - 在后端面板中提供一个媒体文件管理用户界面。它允许后端用户上传媒体文件,例如图片或视频文件,并将它们包含在其他地方,例如,博客文章中。tailor - 介绍 October CMS Tailor 功能。themes 目录包含用于前端网站 CMS 主题的子目录。 CMS 主题包含用于网站页面、布局、局部组件、资产及其他文件的模板文件。 活动主题使用 cms.active_theme 配置参数设置,并可以从后端面板设置页面覆盖。
`vendor` 目录包含通过 Composer 包含的包。某些插件也可以包含 `vendor` 目录。系统级的 `vendor` 目录优先于插件特有的 `vendor` 目录。
app 目录包含应用程序特有的文件,包括内容、资产以及不属于 传统插件 的业务逻辑。它包含一个由默认配置加载的服务提供者文件。
该 app/assets 目录包含资产文件,例如 JavaScript、CSS 和图像文件。该目录应可公开访问供网站使用。
app/blueprints 目录包含 Tailor 使用的 内容蓝图 文件.
你可以在此处创建任何目录,就像插件一样,例如 models 或 controllers。它们将被自动加载到 App 命名空间中。例如,文件 app/models/Customer.php 将在 PHP 中以 App\Models\Customer 的形式提供。