zanderwar / silverstripe-pagefeedback
此包已被 废弃 且不再维护。作者建议使用 vulcandigital/silverstripe-pagefeedback 包。
此模块允许您在任何页面类型上添加表单,以便积累关于用户如何感知该页面的反馈。
2.0.3
2020-02-13 09:05 UTC
Requires
- silverstripe/recipe-cms: ^1 || ^4
Requires (Dev)
- phpunit/phpunit: ^5.7
- squizlabs/php_codesniffer: 3.*
Suggests
- silverstripe/spamprotection: To enable spam protection features to your feedback forms
This package is auto-updated.
Last update: 2020-02-13 09:06:27 UTC
README
silverstripe-pagefeedback
此模块允许您在任何页面类型上添加表单,以便积累关于用户如何感知该页面的反馈。
通常在帮助台页面上的标签类似于“您认为这个页面有多有帮助?”的地方找到。
它允许用户对页面进行5分(5分)评级,并允许他们可选地提供评论。
用户的IP地址和他们的PHP会话ID将根据页面进行记录,以便用户只能为该特定页面提交一次反馈。
要求
- silverstripe/cms: "^4.0"
安装
仅通过composer支持安装。
composer require vulcandigital/silverstripe-pagefeedback "^2"
配置
此模块主要是一个 DataExtension
和一个 Extension
。您必须在希望渲染反馈表单的页面类型及其相应的控制器上应用它们。
如果您想在所有页面上启用此功能,请
Page: extensions: - Vulcan\PageFeedback\Extensions\PageFeedbackExtensions PageController: extensions: - Vulcan\PageFeedback\Extensions\PageFeedbackControllerExtensions
或者为特定的页面类型
Vulcan\UserDocs\UserDocsPage: extensions: - Vulcan\PageFeedback\Extensions\PageFeedbackExtension Vulcan\UserDocs\UserDocsPageController: extensions: - Vulcan\PageFeedback\Extensions\PageFeedbackControllerExtensions
模式
默认情况下,模式设置为“表单”,这将生成一个表单,允许用户在1-5之间进行评分,并可选择性提供评论。另一个模式“点赞”是可用的,它将生成一个包含两个按钮 +1
和 -1
的表单,这些按钮可以优雅地样式化。
您可以通过YML更改控制器中页面的模式。
Vulcan\UserDocs\UserDocsPageController:
pagefeedback_mode: "thumbs"
添加表单
为了显示表单,您需要在模板中添加 $PageFeedbackForm
,在您希望显示的位置。
例如。
<div id='myfeedbackform'> $PageFeedbackForm </div>
如果您希望用户已经提交了反馈时隐藏表单
<% if not $GivenFeedback %> <div id='myfeedbackform'> $PageFeedbackForm </div> <% end_if %>
如果您希望显示用户提供的反馈信息
<% if $GivenFeedback %> <% with $GivenFeedback %> <div id='myprovidedfeedback'> <% if not $Rating %> Rating: $Rating<br/> Comment: $Comment <% else %> You gave this page a thumbs <strong>$Thumbs</strong> <% end_if %> </div> <% end_with %> <% end_if %>
功能
- 向CMS页面编辑器添加“页面评级”部分
- 添加包含该特定页面所有反馈的
GridField
的“页面反馈”标签页
灵感
表单是未样式的,但表单上的每个五个单选按钮都有一个类 pagefeedback-option-n
,其中 n
是从 1
到 5
的数字,以便更容易地进行自定义(例如,用具有不同表情的笑脸替换单选按钮;从悲伤到快乐)
(灵感来源于shopify文档)