femundfilou / kirby-image-snippet
用于处理Kirby中图像的片段和辅助方法
0.2.0
2024-02-18 12:42 UTC
Requires
- getkirby/cms: ^3.6 || ^4.0
- getkirby/composer-installer: ^1.1
Requires (Dev)
README
用于处理Kirby中图像的片段和辅助方法。
安装
通过composer安装
要使用这些片段和辅助方法,您需要通过composer安装此包。
composer require femundfilou/kirby-image-snippet
使用方法
片段
<?php snippet('image', ['image' => $page->images()->first()]); ?>
字段方法
<div data-cover='<?= $page->images()->first()->toImageInterface()->toJson(); ?>' data-images='<?= $page->images()->toImageInterfaces()->toJson(); ?>'></div>
选项
您可以根据每张图片覆盖默认选项。
<?php snippet('image', ['image' => $page->images()->first(), 'ratio' => 1, 'dimensions' => [200]]); ?>
<div data-cover='<?= $page->images()->first()->toImageInterface(['ratio' => 1, 'dimensions' => [200]])->toJson(); ?>'></div>
懒加载
您可以通过在选项中定义 lazy => true
来激活懒加载。然后,片段将向 picture
元素添加 data-lazyload
,并将srcset作为 data-srcset
添加到每个 <source>
。然后您必须使用自己的javascript实现来懒加载图像。
配置
默认
您可以在网站的 site/config.php
中覆盖默认配置。
<?php return [ 'femundfilou.image-snippet' => [ 'placeholder' => [ 'width' => 50, 'blur' => 10, 'quality' => 50 ], 'defaults' => [ 'ratio' => 0, 'quality' => 80, 'blur' => 0, 'grayscale' => false, 'lazy' => false, 'formats' => ['webp', 'jpg'], 'dimensions' => [400, 800, 1140], ], ] ]; ?>