silvercommerce / complex-category
允许更复杂前端功能的分类(例如排序和选择页面长度)
1.2.0
2023-02-12 13:25 UTC
Requires
- silvercommerce/catalogue-admin: 1.*@dev
- silvercommerce/catalogue-frontend: 1.*@dev
- silverstripe/framework: ~4.0
README
允许对产品进行排序并选择分页长度的分类
安装
使用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传递的,而是传递所选选项的索引,然后控制器选择适当的设置。