sheadawson / silverstripe-rateable
该软件包最新版本(3.1.0)没有提供许可证信息。
一个扩展,可以为任何 DataObject 类型添加星级评分系统 + UI。
3.1.0
2024-03-01 19:01 UTC
Requires
- silverstripe/cms: ^4.1 || ^5
- silverstripe/vendor-plugin: ^1 || ^2
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
您仍然可以在这种类型的某些页面上手动在“设置”部分中启用它。