Gravatar 头像自动更新?

有没有办法配置 Discourse,使其在 gravatar.com 上的 Gravatar 更新时自动更新头像?

我认为绝大多数人认为,如果他们在 gravatar.com 上更新了 Gravatar,那么他们在所有网站上的个人资料头像也会随之更新。

但 Discourse 需要手动点击按钮才能更新 Gravatar 头像,这与上述预期相反。

这意味着,如果我更新了 Gravatar,我就需要记住所有使用过的 Discourse 站点,并逐一手动更新 Gravatar。

我认为这对 Gravatar 用户来说是非常出乎意料的行为。

我们目前没有用于更新 Discourse 中 Gravatar 的工作任务。一旦下载,它们将永久保存。

实际上,我们几乎未收到任何关于此问题的投诉。

如果您确实需要为所有用户更新,可以运行以下命令:

./launcher enter app
rails r 'UserAvatar.find_each {|u| print "."; u.update_gravatar!}'

该命令需要一段时间才能完成。

这也会更新已经设置了自定义头像的用户吗?还是仅针对那些没有设置的?我同意这并非必要功能,但这仍然是一个有趣的选项。

该命令对所有人都有效,但不会切换到 Gravatar。

根据我的经验,Gravatar 头像通常会在几分钟后自动更新,至少在我使用过的网站上是这样。WordPress 站点就是很好的例子。

我认为自定义头像应该会覆盖默认设置并保持不变。这就像是在内部作用域中重写了变量,即使外部变量发生变化,它也不会改变。

许多网站使用 Gravatar 的方式会暴露用户身份。它们直接热链到 Gravatar。这意味着你可以进行诸如暴力破解电子邮件地址之类的操作。

Discourse 会复制头像。

如果用户希望在 Discourse 上更新 Gravatar 头像,他们必须点击刷新按钮。