clarkwinkelmann / flarum-ext-predefined-avatars
让用户从列表中选择头像
Requires
- ext-json: *
- flarum/core: ^1.2
README
让 Flarum 用户从列表中选择头像。
该扩展可以以各种方式配置,以保留或禁用自定义头像上传或默认的“首字母”头像。
头像的更改方式与 Flarum 默认方式相同:通过点击用户资料中的头像。
该扩展不包含任何图像。您可以从管理员那里上传自己的图像。
别忘了更新“从预定义列表中选择头像”的权限以包括您的用户。您可以设置权限为“所有人”以允许用户在验证电子邮件之前更改到自定义头像。
安装
composer require clarkwinkelmann/flarum-ext-predefined-avatars:*
头像存储
头像放置在 public/assets/avatars/predefined
文件夹中。每个图像只有一个实例,所以如果多个用户使用相同的预定义图像,文件只会被加载一次。
该扩展尝试通过从磁盘和可能仍然拥有该头像的任何用户那里删除它们来清理已删除的图像。但是,如果上传了图像但从未保存新设置,则某些图像可能不会被删除。
如果您希望用可识别的文件名而不是默认的随机标识符命名您的图像,可以将它们手动添加到 predefined
文件夹,然后编辑 settings
表中的 predefinedAvatars
键。predefinedAvatars
设置是一个以字符串形式表示的可用文件名的 JSON 编码数组。
要从数据库中手动设置预定义头像给用户(例如,从 phpMyAdmin),在 avatar_url
列中使用 predefinedAvatar:<filename>
格式。例如,如果文件是 avatars/predefined/abcdefg.png
,设置中的值将是 abcdefg.png
,而在 avatar_url
列中的值将是 predefinedAvatar:abcdefg.png
。
不要在 avatar_url
中使用图像的实际路径,否则 Flarum 将在用户更改头像时尝试删除该文件!
已知问题
- 如果用户使用提供默认头像的社会登录连接,将绕过“仅允许预定义头像”。但是,“默认头像”设置应该覆盖社会头像。
- 如果您删除了一个预定义头像,使用该头像的用户将恢复到没有头像的状态,即使启用了“防止设置无头像”。
- 在您第一次启用扩展时,论坛上的现有用户不会自动更新以满足约束。
支持
此扩展处于 最小维护 状态。
它是为了客户开发的,并作为开源软件发布,以造福社区。我可能会免费发布简单的错误修复或兼容性更新。
您可以通过 此链接 联系我,赞助额外功能或更新。
通过 Flarum 社区线程提供“尽力而为”的支持。