Plone的社会网络集成。
项目描述
生命、宇宙和一切
此软件包提供了与以下社交网络在Plone中的集成
Facebook
Google+
LinkedIn
Pinterest
Telegram
Twitter
WhatsApp(仅限移动设备)
集成是通过Open Graph 协议基本元数据和包含所有启用社交网络的分享小部件来完成的。
大多无害
有想法?发现了一个错误?通过打开支持票据告诉我们。
不要慌张
Plone 版本兼容性
此软件包与Plone 4.3和5.0兼容。
安装
要在基于buildout的安装中启用此产品
编辑您的buildout.cfg并将sc.social.like添加到要安装的egg列表中
[buildout] ... eggs = sc.social.like
更新配置后,您需要运行“bin/buildout”,这将负责更新您的系统。
转到Plone站点的“站点设置”页面,并单击“附加组件”链接。
在Social: Like Actions旁边的框中勾选,然后单击“激活”按钮。
配置
转到Plone界面的“站点设置”页面,并单击“附加组件配置”下的“社交 Like”链接。
控制面板配置集。
在那里您可以配置Social: Like Actions的行为,哪些操作将被显示以及针对哪些内容类型。
Open Graph 协议支持
以下基本元数据包含在启用了社交媒体行为的内容类型中
og:title:项目的标题
og:description:项目的描述
og:type:默认为“website”在门户网站根目录,其他地方为“article”
og:url:项目的规范 URL,即项目首次发布时使用的URL
og:image:项目主要图像的“large”尺寸,如果有;您可以在控制面板配置集中定义一个用于缺少主要图像的内容的备用图像
Facebook 预加载
当内容首次分享时,Facebook爬虫会从分享的URL中抓取并缓存元数据。爬虫必须至少看到一次图片,然后才能渲染。预加载允许Facebook在有人分享之前下载内容。
根据Facebook文档,预加载对于在慢速或差的网络连接上使用Facebook的人来说特别有益。预加载还能更快地加载移动站点内容,从而提高Android和iPhone设备上的Facebook应用体验。
您可以通过控制面板配置选项启用Facebook预加载。
每当发布新内容或编辑发布的内容时,都会自动生成对Graph API端点的调用。这将确保Facebook上的元数据始终是最新的。
规范 URL 和迁移到 HTTPS
某人首次分享链接时,Facebook爬虫会抓取该URL的HTML代码,以收集、缓存并在Facebook上显示有关内容的详细信息。Facebook使用HTML代码中包含的og:url标签,在同一个URL上聚合点赞和分享,而不是分散在多个页面的版本中。如果您移动内容或从HTTP迁移网站架构到HTTPS,这些计数器将归零。
为了解决这个问题,此包包括一个机制,在发布时存储内容的URL,即使在重命名或迁移架构后,也可以用作规范URL。要启用此功能,您必须将社交媒体行为应用于您的内容类型,并在控制面板配置选项中提供要在网站上使用的规范域名(例如http://www.example.org)。
如果您后来将网站迁移到HTTPS,只需更改规范域名的值(例如https://www.example.org)。在更改之前创建的所有内容仍将反映其规范URL中的旧架构,符合预期。
此包还包括一个辅助视图,用于填充2.10版本之前创建的内容。您可以通过在浏览器中指向/@@canonical-url-updater来访问此视图。
屏幕截图
瓷砖
如果安装了collective.cover,将提供两个新的瓷砖:Facebook和Twitter。
Facebook拼图嵌入了一个Facebook页面。您可以设置宽度和高度,并且可以控制小部件的其他一些方面。为了使用此拼图,必须在社交点赞配置中定义一个Facebook应用程序ID。获取Facebook应用程序ID的说明可以在Facebook开发者网站找到。
Twitter拼图嵌入了一个Twitter时间线。时间线是一种在网站中以紧凑的单列视图嵌入多个推文的简单方法。您可以设置宽度、高度和推文限制,并且可以使用小部件ID。为了使用此拼图,必须在社交点赞配置中定义一个Twitter用户名。
Twitter和Facebook拼图。
待办事项
[ ] Facebook:返回要渲染的分隔逗号的标签字符串
[ ] Twitter:允许移除时间线的显示组件(浏览器)
[ ] Twitter:编辑后刷新拼图
[ ] 为两个拼图编写RobotFramework测试
[ ] 与Plone 5.1兼容性
变更日志
有一个家伙真的知道他的毛巾在哪里。
2.13 (2020-01-02)
2.13b3 (2018-01-11)
当根据NamedImage而不是NamedBlobImage访问图像字段时,避免AttributeError。[hvelarde]
2.13b2 (2017-10-30)
当将包设置迁移到Plone注册表时,避免AttributeError。[hvelarde]
完成巴斯克语翻译。[erral]
2.13b1 (2017-09-28)
2.12b1 (2017-09-15)
更新巴西葡萄牙语和西班牙语翻译。[hvelarde]
实现一个验证器来检查内容是否遵循社交网络分享的最佳实践(关闭#128)。[claytonc, hvelarde]
2.11b2 (2017-09-11)
在从先前版本升级包时避免KeyError。[hvelarde]
2.11b1 (2017-09-08)
2.10.1 (2017-08-02)
2.10 (2017-07-17)
修复对基于 Dexterity 的内容类型的 Facebook 开放图规范 URL 的支持;之前错误地使用当前 URL 作为项目的规范 URL,导致在移动内容或更改模式以访问站点(HTTP 到 HTTPS)时计数器为零。请检查包文档以获取有关如何使用此新功能的信息(修复 #104)。[hvelarde]
停止对 Plone 4.2 的支持。[rodfersou]
在 Plone 5 中,同步新社交媒体配置中发现的冗余字段。对 facebook_app_id、facebook_username 或 twitter_username 字段所做的更改将反映在两个配置中(修复 #100)。[hvelarde]
2.9 (2017-03-09)
添加 Facebook 控制面板设置以显示/隐藏喜欢数量。默认情况下,Facebook 插件仍然显示喜欢数量。[fredvd]
2.8b1 (2017-02-03)
更新巴西葡萄牙语和西班牙语翻译。[hvelarde]
添加通过电子邮件分享内容的功能(关闭 #91)。[rodfersou, hvelarde]
2.7b1 (2017-01-09)
添加缺少的升级步骤以烹饪 CSS 资源。[hvelarde]
如果标题包含非 ASCII 字符,Twitter 插件不会失败。[csenger, hvelarde]
添加 Twitter 卡片的元数据(关闭 #65)。[rodfersou]
2.6b1 (2016-12-21)
代码清理;删除了与加载 BMP 图像相关的测试,因为这些测试没有意义。[hvelarde]
对于未发布的内容,不显示社交喜欢视图组件(关闭 #83)。[rodfersou]
修复包依赖关系。[maurits, hvelarde]
2.6a1 (2016-09-23)
为 collective.cover 添加 Facebook 和 Twitter 瓦片。Facebook 瓦片嵌入一个 Facebook 页面。Twitter 瓦片嵌入一个 Twitter 时间线。[hvelarde]
为 Telegram 和 WhatsApp 分享链接添加 title 属性。[hvelarde]
对 enabled_portal_types 字段强制执行约束,以避免在运行升级步骤到 v3040 时出现 WrongType 错误。[hvelarde]
在运行升级步骤到 v3010 时,不要在添加 Facebook 的“喜欢”按钮时失败。[fredvd, hvelarde]
2.5 (2016-07-26)
2.4.1 (2015-12-10)
更新包分类器;错误地将 Plone 5 包含在支持的版本列表中。[hvelarde]
使用“application/javascript”媒体类型而不是过时的“text/javascript”。[hvelarde]
2.4 (2015-09-17)
停止对 Plone 4.1 和 Python 2.6 的显式支持;包应该可以工作,但我们不再测试这些版本,因此不保证兼容性。[hvelarde]
通过将移动检测客户端移动到客户端来修复 WhatsApp 按钮的缓存问题(关闭 #56)。[rodfersou]
添加荷兰翻译。[fredvd]
修复卸载错误。[bsuttor]
2.3 (2015-07-14)
添加“不要跟踪用户”配置选项,以防止社交网络向站点访客发送 Cookie。这将以简单链接替换社交徽章。[keul]
添加德语翻译。[tohafi]
2.2 (2015-05-04)
添加 WhatsApp 插件(关闭 #39)。[rodfersou]
2.1 (2015-03-02)
更新巴西葡萄牙语和西班牙语的翻译。[hvelarde]
删除已弃用的 portal_actionicons 注册。[keul]
翻译修复:一些标签未翻译[keul]
现在提供Facebook“分享”按钮。见#15。[keul]
添加了刷新CSS注册表的缺失迁移步骤[keul]
2.0.2 (2015-02-23)
删除了旧的特定于Facebook的CSS规则,该规则截断新Facebook小工具。这解决了#38。[keul]
2.0.1 (2015-02-23)
没有变化(棕色袋发布)。
2.0 (2015-02-10)
不要在非规范视图中加载社交媒体内容(如编辑表单或类似)。这解决了#36。[keul]
添加了意大利语翻译。[keul]
所有社交插件的加载行为已更改为异步。[keul]
修复了新闻中加载的图像问题。如果图像不是JPG,则get_content_image方法无法获取图像大小并返回空值。这避免了某些奇怪的事情,如Pillow的MemoryError。[cekk]
如果名为“图像”的字段不是ImageField,则不要破坏视图小部件。[cekk]
为get_content_image方法添加了对TypeError的异常处理。[cekk]
修复了用于内部页面的og:type元数据,使用值为‘article’。[fdelia]
2.0rc1 (2014-10-14)
使用safe_unicode处理内容标题中的重音字符。[ericof]
2.0b4 (2014-08-08)
修复了操作按钮的样式。现在它们并排显示[agnogueira]
修复了Twitter插件中的UnicodeDecodeError(由Programa Interlegis报告)[ericof]
2.0b3 (2014-06-06)
修复了在创建AT图像时发生的除以零问题(在portal_factory时)[ericof]
2.0b2 (2014-06-02)
Facebook现在推荐1200 x 630的图像[ericof]
2.0b1 (2014-02-07)
在视图小部件上使用查看权限,以避免匿名用户尝试显示网站的非公开部分时的安全失败。[thomasdesvenain]
修复了包依赖项。[hvelarde]
2.0a2 (2013-11-04)
使用内容语言而不是请求语言,避免缓存问题 https://github.com/collective/sc.social.like/issues/19 [ericof]
2.0a1 (2013-07-23)
停止支持Plone 4.0.x [ericof]
增加测试覆盖率 [ericof]
在folder_full_view和all_content模板上渲染元数据视图小部件 https://github.com/collective/sc.social.like/issues/11 [ericof]
修复垂直显示 https://github.com/collective/sc.social.like/issues/5 [ericof]
添加LinkedIn和Pinterest支持。 https://github.com/collective/sc.social.like/issues/6 [ericof]
插件实现 [ericof]
确保所有资源都使用方案相关URL加载。以前,在HTTPS站点上尝试加载HTTP会导致页面损坏。[davidjb]
Plone 3.x不再官方支持;自行承担风险使用。[hvelarde]
将CSS导入更改为链接。[agnogueira]
以前的条目可以在HISTORY.rst文件中找到。
社交媒体和Plone 5
Plone 5包括一些配置字段,这些字段已经在此包的新社交媒体配置选项中可用。每当您更改Twitter用户名、Facebook应用ID或Facebook用户名时,无论是使用新的社交媒体配置选项还是社交媒体喜欢配置选项,都会在幕后同步这些冗余字段的值。
Plone 5中的社交媒体配置选项。