breadlesscode/neos-listable

此包最新版本(v2.1.3)的许可证信息不可用。

Neos Fusion 列表项实现

v2.1.3 2022-12-09 10:27 UTC

README

Latest Stable Version Downloads License GitHub stars GitHub watchers

此 Neos CMS 插件用于在 Fusion 中列出和分页 NodeTypes。此包深受 Flowpack.Listable 的启发,感谢!:)

安装

大多数情况下,您需要对包进行一些小的调整(例如,Settings.yaml 中的配置)。因此,将相应的包添加到您的主题 composer 中非常重要。这通常是位于 Packages/Sites/ 下的站点包。要正确安装,请转到您的主题包(例如,Packages/Sites/Foo.Bar)并运行以下命令

重要:如果您使用 Neos 版本 >5,您应该需要此包的版本 1。

composer require breadlesscode/neos-listable --no-update

–no-update 命令阻止依赖项的自动更新。在将包添加到您的主题 composer.json 后,返回 Neos 安装根目录并运行 composer update。现在已正确安装所需的包。

示例

prototype(Vendor.Xy:MyPersonalList) < prototype(Breadlesscode.Listable:List) {
    collection = ${ q(site).find('[instanceof Vendor.Xy:BlogPost]') }
    limit = ${ 10 }
    itemRenderer = 'Vendor.Xy:MyPersonalListItem'
    itemName = ${ 'item' }
    # if you want no pagination you can set this property:
    # paginated = ${ false }
}

prototype(Vendor.Xy:MyPersonalListItem)  < prototype(Neos.Fusion:Tag) {
    tagName = 'a'
    content = ${ q(item).property('title') }
    attributes {
        href = Neos.Neos:NodeUri {
            node = ${ item }
        }
    }

    @process.headlineWrap = ${ '<h2>' + value '</h2>' }
}

配置

您有两种方法可以配置此包的分页。您可以通过 Settings.yaml 全局设置配置

Breadlesscode:
  Listable:
    pagination:
      showSeperators: true
      showNextAndPrevious: true
      alwaysShowNextAndPrevious: true
      showFirstAndLast: true
      alwaysShowFirstAndLast: true
      alwaysShowFirstAndLastNumeric: false
      numberOfLinks: 3
      labels:
        seperator: '&hellip;'
        previous: '&lang;'
        next: '&rang;'
        first: '&laquo;'
        last: '&raquo;'

并且您可以在 Fusion 中覆盖此配置以针对特定列表

prototype(Vendor.Xy:MyPersonalList) < prototype(Breadlesscode.Listable:List) {
    # ...
    paginationConfig {
        showSeperators = true
        showNextAndPrevious = true
        alwaysShowNextAndPrevious = true
        showFirstAndLast = true
        alwaysShowFirstAndLast = true
        alwaysShowFirstAndLastNumeric = false
        numberOfLinks = 3

        labels {
            seperator = '&hellip'
            previous = '&lang;'
            next = '&rang;'
            first = '&laquo;'
            last = '&raquo;'
        }
    }
}

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件