sitegeist / iconoclasm
Neos 图像的 Imagemin 集成
Requires
- neos/media: ^7.3 || ^8.0 || dev-master
This package is auto-updated.
Last update: 2024-08-25 11:31:19 UTC
README
使用 imagemin-cli 或其他工具优化 Flow 和 Neos 的图像。
此包受 MOC.ImageOptimizer https://packagist.org.cn/packages/moc/imageoptimizer 和 Sitegeist.Origami https://github.com/sitegeist/Sitegeist.Origami 启发,基本上执行相同的任务。
与前述包的差异
- 所有需要优化的媒体类型必须明确启用。
- 默认情况下使用 Imagemin-cli 对所有启用的媒体类型进行操作,但可以根据需要替换。
- 由于异步缩略图现在是默认设置,因此不需要像 Sitegeist.Origami 那样使用工作队列。
- 稍后导入的本地临时文件应支持云存储(尚未测试)。
- 具有文件扩展名的临时文件允许使用依赖文件扩展名的工具。
作者 & 赞助商
- Martin Ficzel - ficzel@sitegeist.de
此包的开发和公共发布得到了我们雇主的慷慨赞助 http://www.sitegeist.de。
安装
Sitegeist.Iconoclasm 通过 Packagist 提供。只需将 "sitegeist/iconoclasm" 添加到 composer.json 的 require 部分,或运行 composer require sitegeist/iconoclasm
。我们使用语义版本控制,因此每次重大更改都会增加主要版本号。
除了 Flow 包之外,还需要在服务器上提供 imagemin-cli 和所有插件或其他工具。您可以使用 npm
全局安装库。
npm install --global imagemin-cli imagemin-pngquant imagemin-webp imagemin-mozjpeg
您还可以将包安装到专用文件夹中而不是全局。在这种情况下,您必须使用完整路径配置 imagemin 命令,如 /your/folder/node_modules/imagemin-cli/cli.js
。
npm install --prefix /your/folder imagemin-cli imagemin-pngquant imagemin-webp imagemin-mozjpeg
!!!请通过分别执行每个插件来验证 CLI 工具是否正常工作。特别是 imagemin-webp 工具有时需要额外的库!!!
配置
使用 Sitegeist.Iconoclasm
配置,可以配置使用的 command
。mediaTypes
部分允许启用某些类型,并允许覆盖此类型的全局 command
。
Sitegeist:
Iconoclasm:
#
# The imagemin cli command, you may want to configure an explicit path here for your server
#
# The tool can be installed npm install --global imagemin-cli imagemin-pngquant imagemin-webp imagemin-mozjpeg imagemin-svgo
#
command: 'imagemin {input} > {output}'
#
# The media types that are to be optimized
#
# Each media type has to be enabled for optimizing. In case specific options or even
# an different command shall be used the global `command` can be overwritten for each type.
#
mediaTypes:
'image/jpeg':
enabled: true
command: 'imagemin {input} --plugin=mozjpeg > {output}'
'image/png':
enabled: true
command: 'imagemin {input} --plugin=pngquant > {output}'
'image/webp':
enabled: true
command: 'imagemin {input} --plugin=webp > {output}'
'image/gif':
enabled: false
'image/svg':
enabled: false
用法
- 清除缩略图以生成新的缩略图,这些缩略图将自动优化。
./flow media:clearthumbnails
- 刷新 Fusion 缓存
./flow flow:cache:flushone Neos_Fusion_Content
- 查看系统日志进行调试和错误输出。