WP MVC的app/目录结构全解析:8个文件夹里到底放什么? WP MVC的app/目录结构全解析8个文件夹里到底放什么【免费下载链接】wp-mvcAn MVC framework for WordPress项目地址: https://gitcode.com/gh_mirrors/wp/wp-mvcWP MVC是一个面向 WordPress 的 MVC 框架插件让你像使用 Ruby on Rails 或 CakePHP 一样用「模型-视图-控制器」的方式快速开发 WordPress 插件。所有插件代码都集中放在一个app/目录里但里面 8 个文件夹各自负责什么本文带你一次性搞清楚。一、先记住这张目录总览图一条wpmvc generate plugin命令就会自动在插件根目录下创建标准的app/结构定义见 core/shells/generate_shell.phpapp/ ├── config/ # 全局配置与路由 │ ├── bootstrap.php │ └── routes.php ├── controllers/ # 前台公开控制器 ├── controllers/admin/ # 后台WordPress 管理区控制器 ├── models/ # 数据模型 ├── public/ # 静态资源 │ ├── css/ │ └── js/ ├── views/ # 前台视图 ├── views/admin/ # 后台视图 └── widgets/ # WordPress 小工具可选 每个 Model模型还会自动在views/和views/admin/下生成以自己命名的子目录比如views/events/。二、8 个文件夹逐个拆解1️⃣ config/ —— 应用的大脑存放app/的全局配置bootstrap.php启动时执行用来设置调试模式、追加管理后台页面、挂接 WP 钩子等routes.php定义 URL 路由规则决定/events/1/这类地址如何映射到控制器。 示例见 examples/events-calendar-example/app/config/。2️⃣ controllers/ —— 前台业务逻辑存放处理网站前台请求的控制器文件名格式为{资源名}_controller.php如events_controller.php。它负责接收路由、调用模型、渲染页面。3️⃣ controllers/admin/ —— 后台管理逻辑WordPress 自带管理后台WP MVC 会自动为每个模型注册管理菜单。这里存放对应的admin_{资源名}_controller.php处理后台的增删改查动作你不需要手写任何菜单代码。4️⃣ models/ —— 数据层每个模型一个文件如event.php继承 WP MVC 的模型基类封装数据库表操作、字段校验与关联关系。模型是框架自动创建后台菜单的依据。5️⃣ public/ —— 静态资源存放插件使用的css/与js/文件。通过辅助函数mvc_css_url()即可在配置中正确引用这些资源。6️⃣ views/ —— 前台视图按模型分子目录组织如views/events/index.php列表页show.php详情页_item.php列表中的单条条目片段下划线前缀表示局部模板7️⃣ views/admin/ —— 后台视图同样按模型分子目录存放后台的add.php新增表单和edit.php编辑表单等页面模板。8️⃣ widgets/ —— WordPress 小工具可选运行wpmvc generate widget后生成让你的 MVC 插件能出现在 WordPress「外观 → 小工具」面板中与主题无缝集成。⚙️ 另外app/settings/目录也受支持里面的设置类文件会在插件激活时自动写入默认选项见 core/mvc_plugin_loader.php。三、命名有讲究约定优于配置WP MVC 借鉴了 Rails 的命名约定由 core/mvc_inflector.php 统一处理只要遵守约定文件就能被自动找到位置命名规则示例models/下划线命名event.phpcontrollers/下划线 _controllerevents_controller.phpcontrollers/admin/admin_前缀admin_events_controller.phpviews/ 子目录表形式复数命名events/四、这些文件夹从哪来一条命令搞定不需要手工建目录。在已启用 WP MVC 的站点下执行wpmvc generate plugin my-plugin框架就会创建插件入口文件、app/的 8 个标准目录逻辑见 generate_shell.php。之后再用wpmvc generate scaffold my-plugin event一条命令即可为event模型同时生成控制器、模型和全部视图。五、小结一分钟记住 8 个目录目录一句话记忆config/配置与路由应用大脑controllers/前台逻辑controllers/admin/后台逻辑models/数据与校验public/css / js 资源views/前台页面views/admin/后台页面widgets/主题小工具可选新手建议直接参考项目内置示例 examples/events-calendar-example/app/对照 8 个目录各文件的真实内容比读任何文档都快。掌握这套结构后你就能在 WordPress 里愉快地写「正统 MVC」代码了【免费下载链接】wp-mvcAn MVC framework for WordPress项目地址: https://gitcode.com/gh_mirrors/wp/wp-mvc创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考