tollwerk / tw-base
tollwerk制作的TYPO3项目构建块和视图辅助工具集合
v4.7.1
2021-12-28 15:06 UTC
Requires
- ext-curl: *
- ext-dom: *
- ext-json: *
- soundasleep/html2text: ^1.1
- typo3/cms-core: ^10.4.22
- wyrihaximus/html-compress: ^4.1
Suggests
- sjbr/static-info-tables: Data and API for countries, languages and currencies for use in TYPO3 CMS
- typo3/cms-form: Form Library, Plugin and Editor
Replaces
- tollwerk/tw-base: v4.7.1
- typo3-ter/tw_base: v4.7.1
README
tollwerk为TYPO3项目提供的构建块和视图辅助工具集合
域对象
模型
- 自定义
Country
模型扩展SJBR\StaticInfoTables\Domain\Model\Country
(当安装了static_info_tables
扩展时) UnsubmittableFormDefinition
扩展TYPO3\CMS\Form\Domain\Model\FormDefinition
(表单框架)。用于结合自定义钩子进行表单定义,以防止在最终表单步骤之后前进(请参阅类以获取钩子示例)
仓库
- 自定义
CountryRepository
提供findByIntlPhoneNumber()
方法,用于查找以特定数字开头的国家代码的所有国家。当安装了static_info_tables
扩展时,扩展SJBR\StaticInfoTables\Domain\Repository\CountryRepository
。
特性
DebuggableRepositoryTrait
— 将此添加到仓库中,并使用debugQuery()
方法进行 SQL 查询调试。StoragePidsIgnoringRepositoryTrait
— 将此添加到仓库中,作为快速轻松地使其忽略存储 PID 的方法。
链接处理程序
- 电信链接处理程序 添加了对电话等支持的。
服务
- 自定义
ImageService
扩展\TYPO3\CMS\Extbase\Service\ImageService
添加格式转换功能 - 图像压缩服务(mozjpeg,SVGO)
- 图像转换器(WebP)
- 原始 LQIP 服务,创建光栅图像的 SVGO 预览
- 文本压缩服务(gzip,brotli)
这些服务默认不工作,需要在服务器上安装特定的软件
- 要使用 mozjpeg 编码器 优化 JPEG 图像,请安装 Mozilla JPEG Encoder Project 并创建一个指向
jpegtran
的mozjpeg
别名。 - 要创建 WebP 图像变体,请安装服务器上的 WebP 转换器,并确保 cwebp 编码器工具作为
cwebp
在命令行中可用。 - 要创建 AVIV 图像变体,请安装服务器上的 AVIF 转换器,并确保编码器工具作为
avifenc
在命令行中可用。 - 要动态压缩 SVG 图像,请安装基于 Node.js 的 Node.js 和 SVGO 工具,并确保它作为
svgo
在命令行中可用。 - 要为具有原始的图像创建 SVG 预览,请安装您的服务器上的 Go 语言 和 Primitive,并确保
primitive
在命令行中可用。 - 要创建合并的 CSS 和 JavaScript 文件的 gzip 版本,您需要安装 GNU Gzip 命令行实用程序(标准任何 Linux 系统),作为
gzip
二进制文件全局可用。 - 为了创建合并的CSS和JavaScript文件的Brotli压缩版本,您需要安装Brotli命令行工具,该工具全局可用,作为
brotli
二进制文件。
视图辅助工具
cta
视图辅助工具用于渲染调用操作<a>
或<button>
标签debug
视图辅助工具用于更好地调试实时环境heading
视图辅助工具用于语义文档结构化render
视图辅助工具用于渲染部分和章节,具有标题上下文感知image
视图辅助工具用于渲染压缩图像media
视图辅助工具用于响应式图像uniqid
视图辅助工具page.title
视图辅助工具structuredData.*
视图辅助工具- 用于准备/精炼HTML元素属性列表(空/非空、数据属性、二进制属性)的视图辅助工具
language
视图辅助工具将2个字符的ISO 639-1语言标识符转换为可读标签(仅限内部语言)- 表单元素视图辅助工具(通过其名称返回一个表单框架元素)
form.page.elementsByIdentifier
视图辅助工具(通过其标识符返回表单页的所有可渲染元素的数组)- 链接信息视图辅助工具(返回有关链接目标的详细信息)
- SVG图标和图标精灵视图辅助工具(返回有关链接目标的详细信息)
format.age
视图辅助工具用于返回可读的年龄字符串format.leadingZeroes
视图辅助工具用于返回格式化的数字字符串
实用工具
- 数组实用工具用于高级数组操作
- cURL实用工具用于制作HTTP请求
- 电子邮件实用工具用于发送混合HTML/纯文本电子邮件
- TCA实用工具用于简化TCA配置和操作
- 本地化实用工具用于增强本地化,并回退到给定的翻译键
标题提供者
FlexPageTitleProvider
用于更改页面的默认标题。SeoPageTitleProvider
用于仅对<title>
元素应用专用页面标题。
有关详细信息,请参阅标题提供者文档。
验证器
- 唯一对象验证器用于测试唯一值是否已被占用(例如,用于与表单框架一起使用)
TCA字段评估
- NumberEvaluation用于具有任意小数位数的数字。删除任何非数字字符并将逗号转换为点
控制台命令
cleanup:processedfiles
用于截断处理文件表并从文件系统中删除相应的文件cleanup:convertedfiles
用于删除图像转换器(WebP)生成的文件变体cleanup:nbsp
用于在RTE字段中将非换行符替换为常规空格- 更新: slugs 用于更新指定表名和字段名的 slugs。
内容元素
- 具有多个来源、海报图片和字幕/标题的自定义视频内容元素
AjaxController
一个可用于处理通过 ?type=4000
的 AJAX 请求的控制器和插件。请参阅 AjaxController::dispatchAction() 了解文档。
杂项
- 带有基于 SVG 的自动预览图片的图片懒加载(类似于 SQIP;需要在服务器上安装特定软件)
- Fluid 独立模板渲染器
- 邮件通知工具(HTML 邮件和平文邮件)
- 存储库的辅助特质(用于调试 SQL 查询以及通常忽略存储 PIDs)
待办事项
- 测试邮件中的内联图片
- 为 wyrihaximus/html-compress 安装 simplexml