spacecatninja / imager-x-bunny-transformer
Imager X 的 Bunny.net 转换器
Requires
- php: ^8.2
- craftcms/cms: ^5.0.0
This package is auto-updated.
Last update: 2024-09-19 22:06:14 UTC
README
一个用于在 Imager X 中使用 Bunny.net Optimizer 作为转换器的插件。
同时也是一个 如何为 Imager X 创建自定义转换器 的示例。
需求
此插件需要 Craft CMS 5.0.0 或更高版本,Imager X 5.0.0 或更高版本,以及 bunny.net 的账户。
用法
按照以下说明安装和配置此转换器。然后,在您的 Imager X 配置 中,将转换器设置为 bunny
,即
'transformer' => 'bunny',
转换现在默认通过 bunny.net 进行转换,使用以下简单的转换来测试您的配置
{% set transform = craft.imagerx.transformImage(asset, { width: 600 }) %}
<img src="{{ transform.url }}" width="600">
<p>URL is: {{ transform.url }}</p>
如果不起作用,请确保您已配置了 defaultProfile
,有正确名称的配置文件,并且拉取区域已设置以指向您的资产存储位置。
注意事项、缺点和技巧
此转换器仅支持默认 craft
转换器时 Imager X 可以做的子集。Bunny.net API 非常有限,基本上仅支持使用 crop
和 fit
调整大小模式进行缩放。宽度、高度、比例、质量和格式将自动从标准 Imager 参数转换,而其他所有附加选项都可以通过 transformerParams
转换参数直接传递给 Bunny。示例
{% set transforms = craft.imagerx.transformImage(asset,
[{width: 400}, {width: 600}, {width: 800}],
{ ratio: 2/1, transformerParams: { saturation: 50 } }
) %}
有关更多信息,请参阅 Bunny.net Optimizer 文档。
安装
要安装此插件,请按照以下说明操作
- 从您的项目目录使用 composer 安装:
composer require spacecatninja/imager-x-bunny-transformer
- 在 Craft 控制面板的设置 > 插件下安装插件,或通过命令行使用
./craft plugin/install imager-x-bunny-transformer
。
配置
您可以通过在您的配置文件夹中创建一个名为 imager-x-bunny-transformer.php
的文件来配置转换器,并根据需要覆盖设置。
profiles [数组]
默认: []
配置文件通常与您在 Bunny.net 中创建的 拉取区域 的一对一映射。您必须使用 defaultProfile
配置设置来指定要使用的默认配置文件,并且可以在模板级别通过在 transformerParams
中设置 profile
来覆盖它。
示例配置文件
'profiles' => [
'default' => [
'hostname' => 'my-zone.b-cdn.net',
'addPath' => [
'images' => 'images',
'otherimages' => 'otherimages',
'moreimages' => 'more/images',
],
'useCloudSourcePath' => true,
],
'myotherzone' => [
'hostname' => 'my-other-zone.b-cdn.net',
]
],
每个配置文件需要三个设置
hostname: 这是您区域的 Hostname。
addPath: 在资产路径前添加路径。如果您想使用一个 Bunny.net 区域来提供多个存储区域,这很有用。如果此设置是一个数组,则键应该是存储区域的句柄,值是要添加的路径。请参见上面的示例。
useCloudSourcePath:如果启用,Imager 将在添加到 Bunny.net 路径之前,将 Craft 源路径添加到资产路径之前。这使得在实例中,当它们位于同一 S3 存储桶的不同子文件夹中时,一个 Bunny 区域可以拉取来自多个 Craft 卷的图像。这仅在实现路径设置的卷上工作(AWS S3 和 GCS 支持,本地卷不支持)。
defaultProfile [字符串]
默认值:''
设置要使用的默认配置文件(见 profiles
)。您可以通过设置 transformParams
变换参数在变换级别覆盖配置文件。示例
{% set transforms = craft.imagerx.transformImage(asset,
[{width: 800}, {width: 2000}],
{ transformerParams: { profile: 'myotherprofile' } }
) %}
价格、许可证和支持
此插件以 MIT 许可证发布。它需要 Imager X,这是一个商业插件,可在 Craft 插件商店中找到 (点击访问)。如果您需要帮助或发现了一个错误,请在此存储库或 Imager X 的存储库中发布一个问题(最好是前者)。