soee / gallery
为 Neos CMS 提供的简单灵活的图片库
1.0.0-alpha1
2024-03-08 16:15 UTC
Requires
- neos/fusion-afx: ^9.0 || dev-master
- neos/media: *
- neos/neos: ^9.0 || dev-master
Requires (Dev)
- phpstan/phpstan: ^1.8
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.7
This package is auto-updated.
Last update: 2024-09-09 18:01:48 UTC
README
本包为 Neos CMS 提供简单易用的 Gallery
和 Albums
实现。
本包提供了 2 个主要组件:
Album
- 允许渲染一系列图片(资产)Gallery
- 允许渲染一系列相册
组件
Album
可以使用 Album
内容元素,它可以被插入到任何页面。
此组件具有与 Album
文档相同的所有属性,这意味着
可以通过选择、标签和集合来渲染资产。
可以通过以下方式获取相册内的资产:
- 手动选择
- 标签 [1..n]
- 资产集合 [1..n]
相册项目可以按文件名、标题、修改日期等进行排序(排序)。
还可以限制要获取和渲染的项目数量。
Gallery
@todo
页面(文档类型)
@todo
设置
本包提供了一些设置,可以在 Settings.yaml
文件中进行调整。
Soee: Gallery: album: thumbnail: width: 200 height: 200 crop: true sortBy: 'title' sortOrder: 'ASC' limit: 10
集成
本包不提供任何现成的与 JavaScript 库集成的解决方案来展示图片。
由开发者决定使用哪个库以及如何将其与包集成。
尽管如此,本节提供了一些如何将包与一些流行库集成的示例。
全屏灯箱(fslightbox)
基本设置需要将库包含到项目中,然后使用 data-fslightbox
属性
来设置要显示在灯箱中的图片。由于 Album
单个项目渲染是通过 AlbumItem
组件完成的,
可以在 linkAttributes
属性上添加 data-fslightbox
属性。这样,所有链接的图片都将具有
此属性的同值,并将作为一组图像(您可以点击上一张/下一张等)显示在灯箱中。
prototype(Soee.Gallery:Presentation.Fragment.AlbumItem) {
linkAttributes {
data-fslightbox = ${String.md5(q(node).property('_identifier'))}
}
}