silvercommerce/complex-category

允许更复杂前端功能的分类(例如排序和选择页面长度)

安装: 449

依赖: 0

建议者: 0

安全性: 0

星级: 0

关注者: 4

分支: 1

类型:silverstripe-vendormodule

1.2.0 2023-02-12 13:25 UTC

This package is auto-updated.

Last update: 2024-09-12 17:14:02 UTC


README

Scrutinizer Code Quality

允许对产品进行排序并选择分页长度的分类

安装

使用composer安装此模块

composer require silvercommerce/complex-category

使用方法

此模块添加了一个名为“Complex Category”的新分类类型,您可以通过管理员界面添加它。这些分类允许您添加一个SortLimitForm,这将添加“排序”和“显示”下拉菜单,并自动更新产品列表。

将表单添加到模板

此模块要求您将$SortLimitForm变量添加到您的分类模板中。

您可以将此添加到所有分类模板中,或者为您的复杂分类指定一个特定的模板。

自定义排序和页面长度选项

您可以通过SilverStripe配置添加自定义排序和页面长度选项。配置选项如下。

ComplexCategoryController.sort_options

一个排序选项数组,其中键是排序(在DataList::sort()调用中加载),值是下拉菜单中加载的内容。

如果您想在排序中添加“日期添加”字段,您可以在您的config.yml中添加以下内容:

ComplexCategoryController:
  sort_options:
    "Created ASC": "Added (most recent first)"
    "Created DESC": "Added (oldest first)"

ComplexCategoryController.show_options

一个页面长度选项数组,其中键是长度(由PaginatedList::setPageLength()使用),值是下拉菜单中加载的内容。

如果您想在字段中添加120和150,您可以在您的config.yml中添加以下内容:

ComplexCategoryController:
  show_options:
    "120": "120"
    "150": "150"

注意:为了帮助防止SQL注入等攻击,上述查询都不是通过URL传递的,而是传递所选选项的索引,然后控制器选择适当的设置。