本·吉尔班克斯)决定付诸实践.在讨论了 Gravatar 隐私问题和 WordPress 几周前重新点燃的原生头像后,他开始研究 Pixel Avatars,这是一种无需连接第三方服务即可生成头像的解决方案。

Gravatar 解决了一个大问题。它创建了一个全球化身,因此用户只需将图像上传到一个站点并在网络上随身携带。要使用该服务,网站必须将电子邮件地址传回 Automattic 旗下的 Gravatar.com,例如当访问者发表评论时。典型的本地化身解决方案受到影响,因为它迫使用户为该特定站点注册和上传图像。这两种选择都不是每个网站所有者的理想选择。此外,这两个选项往往会大大提高页面加载速度,具体取决于加载的头像数量。

这就是像素化身发挥作用的地方。该脚本具有本地化身的所有隐私优势,同时保持较小的占用空间。

“起初,我只是喜欢制作在互联网上跟随你的移动图像的想法,”Gillbanks 说。 “我什至没有考虑使用 Gravatar 对隐私的影响——尽管事后看来这很明显。”

他将 Pixel Avatars 作为 Toolbelt 中的一个模块发布,Toolbelt 是他使用的 WordPress 插件,于 2019 年推出。该插件是 Jetpack 的一个注重隐私的替代品,Jetpack 是另一个依赖于连接到第三方服务器的 Automattic 项目。

“过去几年让很多人更加意识到在线隐私,所以我想在我构建的所有内容中都将隐私放在首位,”他说。

直到 WP Tavern 对此进行了报道,Gillbanks 并没有过多考虑关于 Gravatar 与本地化身的讨论。很高兴看到我们对一些创新想法承担最少的责任。

“使用 Gravatar 是向 WordPress 网站添加头像的公认方式,”他说。 “然而,Gravatar 归 Automattic 所有,它有可能让他们生成关于人们查看(评论)哪些网站以及哪些网站受欢迎程度的大量数据。我没有理由在这里偏执。我怀疑它是否以这种方式使用,但潜力仍然存在,我们无法知道它是否已被用于数据收集。”

他进一步解释说,他认为 Gravatar 会更好作为一个可选插件。“即使捆绑了一个插件,也比默认启用它要好,”他说,“在我看来,默认应该是一个本地化身,其后备类似于我为未注册的人所做的用户(或只是一张空白图片)。我已将代码提供给核心隐私团队——我的插件是 GPL,代码在 Github 上,因此欢迎他们随意使用。”

像素头像功能的工作原理

像素头像完全是站点本地的。代码使用 5kb 的 JavaScript(平均小于单个头像图像)生成像素化头像。对于每个用户,插件创建带有电子邮件地址的哈希字符串。此方法还可以确保头像是一致的,无论它在哪个网站上使用。

原因之一它比传统的头像系统快得多的是头像的生成。它们不是必须加载的图像,这在加载包含 100 条评论(每个评论都有自己的头像)的博客文章时尤其成问题。

“如果你使用外部或本地头像,那么无论你的内容分发系统(服务器、CDN、第三方头像服务等)有多好,你仍然需要加载额外的图像文件,这意味着更多的数据传输,因此页面加载速度比我的 Javascript 系统慢,”Gillbanks 说。

从技术角度来说,脚本比较简单。它短路了 WordPress 的核心 get_avatar() 函数并返回一个 HTML canvas 元素,该元素具有包含用户电子邮件地址哈希的唯一数据属性。加载页面后,JavaScript 代码为每个画布生成一个唯一的图像。

“由于我过滤了核心功能,所以它在我使用该功能的任何地方都有效,”Gillbanks 说。 “管理员中的评论,管理员栏中的小头像,以及任何其他使用 get_avatar() 函数的页面或块。它不仅仅是用于评​​论。”

一些网站所有者可能希望添加一个使用 Toolbelt 处理来宾评论者的头像,同时登录用户提供本地头像。这个系统可以是两全其美的 - 对于拥有虚拟化身并且不将网站访问者的任何数据发送到第三方网站的人来说,他们都是本地化身。 Gillbanks 已经针对 10up 测试了 Simple Local Avatar 插件,但它应该可以与其他本地头像插件一起使用。

喜欢这样:

喜欢正在加载...

资源