SuperAPI AI 工具集

typo3-workspaces

通用与其它

查看项目

更新于 10-15 21:10

技能介绍

用途:该技能用于 TYPO3 v14 的 Workspaces(工作区)功能,让编辑在不影响线上站点的前提下准备内容改动,经过可配置的审核流程后再发布。

主要能力:讲解工作区核心概念,包括 LIVE 工作区(ID=0)与自定义工作区(ID>0);数据库层面的版本化字段 t3ver_oid、t3ver_wsid、t3ver_state、t3ver_stage、pid;t3ver_state 取值含义(0 修改、1 新建、2 删除占位、4 移动指针);覆盖层机制(先取线上记录,再叠加工作区版本与语言翻译);发布流程,DataHandler 版本命令可用 action => 'publish'(推荐)或 'swap',工作区版本 UID 参数键仍为 swapWith。

关键限制:FAL 文件不做版本化,fileadmin/ 中的文件始终属于 LIVE 工作区,覆盖文件会立即影响所有工作区;可预测文件名存在提前泄露风险,建议使用不可猜测文件名、Web 根目录外私有存储、EXT:secure_downloads 或服务器级目录保护。文件集合方面,静态集合(type=static)通过 sys_file_reference 绑定,部分安全;基于文件夹的集合(type=folder)仅存 folder_identifier,运行时从线上文件系统解析,不安全;分类集合部分安全。

使用方式:安装命令 composer require typo3/cms-workspaces;非 Composer 环境在 Admin Tools > Extensions 激活。配置清单涵盖扩展与系统、后端用户组、后端用户、工作区记录、TCA 的 versioningWS 设置、Scheduler 自动发布与预览链接清理任务、TSconfig 选项(如 options.workspaces.previewLinkTTLHours)。

适用场景:需要暂存、审核、定时发布内容,或需要为不同编辑团队隔离改动环境的 TYPO3 v14 项目。

限制与注意:资料基于 TYPO3 v14,旧版 pid=-1、t3ver_state=-1/3、t3ver_move_id 等已废弃;内联子表缺少 versioningWS 会触发弃用提示,v15 将成硬性要求;具体项目行为需在对应 TYPO3 小版本上测试。