EverShop 发布 2.0 以来最大版本 2.2.1,整合了此前未发布的 2.1.3 分支中的 React 19 工作,并叠加四个月开发成果。新版本带来可视化页面构建器、博客模块、实体自定义字段、多语言店面与翻译后台、重建的发货履约栈、内置云存储、商品推荐,以及一轮安全与性能加固。
升级现有商店需注意:首次启动会自动运行 10 个模块的 31 个数据库迁移,其中部分会转换数据并删除旧表,务必先备份数据库并阅读破坏性变更说明。此版本还修复了多个安全漏洞,建议尽快升级。
可视化页面构建器是本次主打功能,位于 /admin/page-builder,通过拖拽编辑器将组件组合进主题区域,支持草稿工作流、定时发布、画布内联编辑、图层面板与全局视图。链接字段通过统一解析器关联商品、分类、CMS 页面和博客文章。
博客模块现为核心组件,支持文章、分类、标签、SEO 描述、评论与反应,并提供店面博客页面和页面构建器博客组件。
元字段功能允许在商品、分类、集合、客户、订单和商店上定义类型化自定义字段,值存于 JSONB 列并用 AJV 校验,GraphQL 暴露可按受众控制。主题可在 theme.json 中声明自己的元字段定义,激活时自动配置。
多语言店面改为运行时本地化,无需重新构建,支持 17 种语言的管理后台翻译。React 19 升级移除了 defaultProps、字符串 refs、findDOMNode 等旧 API,react-toastify 替换为 sonner。
发货履约从一对一改为多包裹模式,订单可分多个包裹发货,各自携带商品分配、状态、追踪信息。云存储 S3、Azure Blob 和 Google Cloud Storage 现为核心组件,无需重启即可运行时配置。
商品推荐包含关联商品、经常一起购买和追加销售三套系统,均提供 GraphQL 字段和页面构建器组件。
安全方面修复了未认证 SSRF、IDOR、存储型 XSS 和账户接管路径;性能上对 50 万商品目录做了压测,优化了 URL 重写索引和关键字搜索查询。
升级前请备份数据库,更新 @evershop/evershop 并重新安装依赖、运行 npm run build。迁移自动执行,需在后台重新上传 Logo,用菜单组件重建导航,并检查新的供应商制发货设置。自定义主题和扩展需适配 React 19、切换 sonner,并更新涉及 widget 表和旧发货表的代码。
完整发布说明:
变更日志:GitHub
#开发者 #工具 #EverShop #React19 #页面构建器 #元字段 #多语言 #云存储 #开源 #电子商务
@DevToolboxHub