基于点赞和踩的评分小部件。
项目描述
简介
这将把那些令人难以抗拒的“美味”小点赞图标添加到您选择的产品中。默认情况下,只有登录用户可以评价产品,一旦登录,他们可以投票一次(并且可以在任何时候更改他们的投票)
安装
如果选择接受这个任务,您需要将此软件包添加到您的构建配置中,并重新运行构建。如果您想将其作为内容标题下的视图小部件,必须在重新启动和安装之前按照以下视图小部件说明操作。否则,立即安装,然后跳转到浏览器视图部分。
如果事情没有按预期工作,请确保您已安装或“激活”了该产品。
兼容性
cioppino.twothumbs与Plone 5.2和6.0兼容,仅在Python 3上运行。对于其他Plone和Python版本,请参阅2.x版本。
作为视图小部件
Cioppino.TwoThumbs为dexterity内容类型提供了一种行为。在dexterity配置UI中,它将在“行为”下列出。
您还可以通过在以下位置添加以下内容手动将此行为添加到您的类型中:../path/to/profiles/default/types/your_type.xml
... <property name="behaviors"> <element value="cioppino.twothumbs" /> ... </property> ...
作为浏览器视图
此外,您还可以通过在模板中添加几行代码在任何内容页面的任何位置生成小部件
<div tal:content="structure here/@@rate-if-you-dare"/>
请注意,这仅在浏览器视图是内容类型的上下文中才有效,因为它需要访问内容对象的注释。
迁移
如果您曾经使用过plone.contentratings并想迁移到点赞产品,PloneSoftwareCenter中有一个示例。这很容易。请参阅https://github.com/collective/Products.PloneSoftwareCenter/blob/master/Products/PloneSoftwareCenter/Extensions/migrateratings.py以获取示例。但是,它尚未在Python 3上尝试,因此您可能需要首先迁移到支持Python 2的版本。但尝试一下也可以。
匿名投票
匿名投票是可能的,但较弱。在第一次投票时生成一个唯一的标识符,并将其设置为cookie。然后,将uid用作后续显示/更改的标识符。要启用匿名投票,请转到Plones配置注册表,搜索cioppino.twothumbs.anonymous条目并编辑它。或者,您可以将自己的registry.xml添加到您网站的配置文件
<?xml version="1.0"?> <registry> <record name="cioppino.twothumbs.anonymousvoting"> <value>True</value> </record> </registry>
伪造匿名投票很容易,所以不要太多信任它们。这里的一个待办事项是添加验证码,这将使自动伪造投票变得不可能。
错误/建议/帮助
致谢
该产品最初在2011年Bodega Bay的Plone Cioppino Sprint中开发。源代码充满了许多内部玩笑,可能只有喝了很多曼哈顿鸡尾酒之后才能维护。没有[饮料]大家的支持,这可能无法实现。大大地感谢。
变更日志
3.0.0 (2022-09-08)
添加对Plone 6.0的兼容性。保持与Plone 5.2的兼容性,但仅在Python 3上。[maurits]
修复升级步骤与元数据版本之间的不匹配。修复了版本3的问题31。[maurits]
2.2.5 (2022-08-08)
2.2.4 (2022-04-02)
修复Plone 5的注册表卸载配置文件。[andreasma]
2.2.3 (2022-03-31)
Flake8和isort修复。[andreasma]
为Plone 5.2和Plone 6.0添加构建脚本,并将它们添加到Github动作测试矩阵中(而不是以前的test_plone.5.2.x构建文件)[andreasma]
使用plone.api进行用户操作。[andreasma]
移除 Travis 配置/构建文件 [andreasma]
更新本地化文件 [andreasma]
2.2.2 (2022-03-21)
从 zope.interface.interfaces 导入 IObjectEvent 和 ObjectEvent [andreasma]
修改 buildout 脚本(buildout.cfg、base.cfg)并添加新文件 constraints_plone52.txt 和新 buildout 脚本 test_plone-5.2.x.cfg [andreasma]
将 lib64 添加到 .gitignore [andreasma]
更新 requirements.txt 以使用 constraints_plone52.txt [andreasma]
修复 like.py 中的导入异常和在 testing.py 中的 flake8 修复 [andreasma]
更新 Manifest.in [andreasma]
添加带有测试的 Github actions 工作流程 [andreasma]
2.2.1 (2021-11-22)
为行为添加名称 [pbauer]
初始化注释时防止 csrf-confirmation [pbauer]
2.2.0 (2019-10-09)
注册用于我们正面评分字段的集合标准。将其用作排序标准有效。将其用作选择标准(X 个点赞或以下/超过 X 个点赞)需要在 plone.app.querystring 的修复 中进行修复,特别是版本 1.2.13(Plone 4)或 1.4.12(Plone 5.1)或更高版本。 [maurits]
修复错误:nulltranslate 没有名为 “context” 的参数。修复了 问题 24。 [maurits]
2.1.2 (2019-01-05)
修复 for composed language domains like nl-be 的 like/dislike 内联弹出文本翻译 [fredvd]
准备 Python 2/3 兼容性 [Andreas Mantke]
2.1.1 (2016-09-12)
重新发布 2.1 版本 [timo]
2.1 (2016-09-12)
将 docs/HISTORY.txt 移动到 CHANGES.rst 以遵循常用最佳实践。 [timo]
添加升级以使 Plone 5 能够识别 css-和 js 文件。 [andreasma]
使用资源注册和分割 GS 配置文件完成 Plone 4 和 Plone 5 兼容性 [sneridagh]
2.0 (2016-03-09)
添加对 Plone 5 的兼容性 [pbauer]
通过将投票数移动到点赞旁并删除摘要来使视觉外观更低调。类似于 YouTube 上的评分。 [pbauer]
修复 HTML 渲染问题。 [andreasma]
修复 like 视图中防止匿名投票启用时使用认证用户 ID 的错误 [cguardia]
1.8 (2014-11-07)
如果配置(registry.xml)受弱 cookie 保护,则允许匿名投票 [jensens]
修复用于无障碍访问的重复 ID [simahawk]
修复在 plone 4.3 下的渲染问题 [simahawk]
特性:添加内容规则的事件和触发器 [Gagaro]
质量保证:添加 travis 和覆盖率支持 [toutp]
质量保证:pep8 修复 [toutp,Gagaro,jensens]
1.7 (2013-06-04)
添加法语翻译 [toutpt]
使模板通过 zcml + 浏览器层可自定义 [toutpt]
添加加泰罗尼亚语翻译 [mpampols]
1.6 (2012-06-11)
修复 dexterity 未安装的实例中的要求 [tschorr]
1.5 (2012-06-07)
添加对 dexterity 行为的支持 [eleddy]
修复默认 Plone 网站中确认消息的对齐问题 [eleddy]
1.4 (2012-05-15)
添加德语翻译 [jensens]
添加巴西葡萄牙语翻译 [agnogueira]
添加对 Plone 3 的支持 [rochecompaan]
在内容 div 外启用 twotumbs 小部件的使用 [rochecompaan]
1.3 (2011-09-22)
将点赞背景图像转换为精灵 [marcosfromero]
改进无障碍性:非 AJAX/JavaScript 支持 [marcosfromero]
改进 i18n 并添加新的西班牙语翻译 [marcosfromero]
改进匿名用户和投票后的反馈 [marcosfromero]
1.2 (2011-05-27)
初始 i18n 和西班牙语翻译 [hvelarde]
1.1 (2011-02-15)
切换到绝对补丁以用于表单操作,因为它在重写的影响下会中断 [eleddy]
1 (2011-02-14)
初始发布 [eleddy 在代码,spanktar 在图形]