timkelty/craft-groupby

此包已被弃用且不再维护。未建议替代包。
关于此包最新版本(1.1)没有可用的许可证信息。

Craft 插件(Twig 过滤器),用于分组条目。

安装: 346

依赖: 0

建议者: 0

安全: 0

星标: 24

关注者: 2

分支: 1

开放问题: 0

类型:craft-plugin

1.1 2016-08-25 14:13 UTC

This package is auto-updated.

Last update: 2022-02-01 13:00:56 UTC


README

Craft 插件(Twig 过滤器),用于分组条目。

注意:我没有计划为此插件更新 Craft 3。请参阅https://github.com/sjelfull/craft3-collections,它可以实现相同的功能,但功能更强大。

用法

  • 参数 1:分组依据的属性,使用点表示法
  • 参数 2:通过键分组未分组的条目。默认为 false,表示未分组的条目将被删除。这些条目始终添加到返回数组的末尾。
{% set allEntries = craft.entries.section('blog').find() %}
{% set allEntriesByCat = allEntries|groupBy('myCategoryField.slug', 'unGrouped') %}

示例

在简单形式下,groupBy 过滤器的工作方式类似于 Craft 原生的 group 过滤器

{% set allEntries = craft.entries.section('blog').find() %}
{% set allEntriesByYear = allEntries|groupBy('postDate.year') %}

groupBy 也可以按嵌套对象分组

{% set allEntriesByCat = allEntries|groupBy('myCategoryField.slug') %}
{% set allEntriesBySection = allEntries|groupBy('section.title') %}

如果您想更疯狂,甚至可以做到这一点

{% set allEntriesByNestedCat = allEntries|groupBy('myEntriesField.myCategoryField.slug') %}
{% set allEntriesByMatrix = allEntries|groupBy('myMatrix.myEntriesField.dateField.localeDate') %}

讨论

插件在 StackExchange 上的动机