sheadawson/silverstripe-rateable

该软件包最新版本(3.1.0)没有提供许可证信息。

一个扩展,可以为任何 DataObject 类型添加星级评分系统 + UI。

安装数: 4,610

依赖关系: 1

建议者: 0

安全: 0

星级: 20

关注者: 8

分支: 12

公开问题: 0

类型:silverstripe-vendormodule

3.1.0 2024-03-01 19:01 UTC

This package is auto-updated.

Last update: 2024-09-23 01:14:18 UTC


README

一个扩展,可以为任何 DataObject 类型添加星级评分系统 + UI

需求

Silverstripe 4 和 5

安装

composer require sheadawson/silverstripe-rateable 2.0.x@stable

将 Rateable DataExtension 应用到您想要评分的对象上。例如,在 mysite/_config/config.yml 中。

Page:
  extensions:
    - SheaDawson\Rateable\Extensions\Rateable

然后,在您的模板中,您可以使用 $RateableUI,在评分对象的环境中渲染星级评分 UI。如果您在单页面上有多个相同的 DataObject + RateableUI 实例,可以向 $RateableUI 传递一个唯一的标识符字符串,例如 $RateableUI('footer')。

运行 dev/build?flush=all

按评分排序对象

$pages = Page::get();
$sortedPages = singleton('RateableService')->sortByRating($pages);

默认禁用某些页面类型

如果您已将此扩展添加到 Page 类,则在所有页面上默认启用。但对于某些页面类型来说,这可能很烦人,例如 ErrorPage 或某些容器。您可以通过添加以下内容到您的 config.yml 中来在默认情况下禁用这些页面上的 $RateableUI:

ErrorPage:
  defaults:	
    EnableRatings: 0

您仍然可以在这种类型的某些页面上手动在“设置”部分中启用它。