i-lateral/silverstripe-deferedimages

延迟加载模板图片

安装次数: 4,010

依赖者: 6

建议者: 0

安全: 0

星标: 5

关注者: 4

分支: 1

类型:silverstripe-vendormodule

1.1.4 2019-10-21 16:07 UTC

This package is auto-updated.

Last update: 2024-09-22 03:22:29 UTC


README

Scrutinizer Code Quality

模块,首先以非常低分辨率版本加载图片,然后使用JavaScript加载完整版本

现在实现heyday/silverstripe-responsive-images,无需任何额外配置。只需按常规配置响应式图片模块,并在模板中调用即可。

安装

通过Composer安装

composer require i-lateral/silverstripe-deferedimages

设置

默认情况下,如果可用,将添加到PageController。可以通过config.yml将此添加到额外的控制器中。

<YourController>:
  extensions:
    - ilateral\SilverStripe\DeferedImages\ControllerExtension

主题

此模块有一个小的主题插件,需要在config.yml中将它添加到您的主题堆栈中,以便加载其模板。

SilverStripe\View\SSViewer:
  themes:
    - 'custom' //your_theme
    - 'deferedimages'
    - '$default'

或者,您可以将模板复制到您自己的主题中。

配置

默认情况下,所有在模板中使用标准$Image.Type()调用的图片都将被延迟加载。

可以通过配置自定义临时图片的大小、质量和外观。

ilateral\SilverStripe\DeferedImages\DeferedImage:
    pixelate: 15 // Applies a pixelation effect to the current image with a given size of pixels.
    blur: 50 // Apply a gaussian blur filter with a optional amount on the current image. Use values between 0 and 100.
    quality: 10  // Define the quality of the encoded image. Data ranging from 0 to 100.
    scale: 100 // Will resize the image to a percentage amount. 100 = current size, 50 = half size, etc.
    limit: 1000 // sets a maximum width for the defered image - will force scaling if original image is larger than this.

要启用在HTMLEditorField中添加的图片的延迟加载,您需要通过_config.php启用包含的短代码解析器。

<?php

use SilverStripe\View\Parsers\ShortcodeParser;
use ilateral\SilverStripe\DeferedImages\DeferedImageShortcodeProvider;

ShortcodeParser::get('default')
    ->register('image', [DeferedImageShortcodeProvider::class, 'handle_shortcode']);