首页
Portal
分类
BBS
汽车
房产
租房
招聘
服务
商家
二手
更多
登录
音乐
美食
新闻
免费资讯
法律移民
旅游观光
纽约优选
»
分类
›
资讯
›
免费资讯
›
解构 MitFrame 内核与 App 化开发新范式
返回列表
发新帖
查看:
111
|
回复:
0
[建站资源]
解构 MitFrame 内核与 App 化开发新范式
[复制链接]
tsbway
tsbway
当前离线
积分
210
64
主题
0
回帖
210
积分
管理员
积分
210
发消息
发表于 2026-7-3 03:45:25
|
显示全部楼层
|
阅读模式
一、从模块到 App:目录结构的革命性调整
在 X3.5 及更早版本中,功能代码分散在 /source/module、/source/include 等多个目录。X5.0 最大的变化是全面 App 化,所有功能模块被整合到 /source/app/ 目录下,每个应用(如 forum、group、member)拥有独立的空间。
开发者适配要点:
如果你正在将 X3.5 的插件迁移到 X5.0,需要留意路径引用的变化。X5.0 新增了 DISCUZ_PLUGIN() 和 DISCUZ_TEMPLATE() 等辅助函数,用于替代硬编码的目录路径,从而兼容未来的 Discuz!ᵂ 云版本。
调用示例:
// 旧方式(X3.5)
require_once './source/plugin/sample/index.php';
// 新方式(X5.0)
require_once DISCUZ_PLUGIN('sample').'/index.php';
复制代码
二、开发一个简单的 App 扩展
X5.0 降低了二次开发门槛。如果你想新增一个独立功能,可以直接在 /source/app/ 下创建目录并实现逻辑。
创建入口文件:在 /source/app/myapp/ 下创建 myapp.php。
初始化环境:引入核心类并初始化。
<?php
require './source/class/class_core.php';
$discuz = C::app();
$discuz->cachelist = [];
$discuz->init();
// 调用同目录下的子文件
require_once appfile('myapp/helper');
复制代码
后台管理入口:在 /source/app/myapp/admin/ 下创建文件,即可通过 admin.php?action=app&operation=myapp:xxx 访问,实现后台一体化管理。
三、拥抱 PHP 8 与多语言(i18n)
X5.0 不再兼容 PHP 7,最低要求 PHP 8.0,推荐使用 PHP 8.1-8.5 以获得最佳性能。这意味着开发者可以利用 PHP 8 的强类型、属性(Attributes)等新特性进行开发。
此外,系统内核级别支持多语言(i18n)。语言包不再强制写在 XML 中,可以直接在插件的 i18n/ 目录下管理,并支持 JS 语言包动态调用。
// JS语言包调用示例
alert($L('jslang')); // 对应 lang_js.php 中的定义
复制代码
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
微信
Archiver
|
手机版
|
小黑屋
|
纽约优选
相关侵权、举报、投诉及建议等,请发 微信: wingtsb
Powered by
纽约优选
在本版发帖
关注公众号
返回顶部
快速回复
返回顶部
返回列表