自定义注册表单 / 隐藏或标准化用户名字段

您好。我使用的是标准版。理想情况下,我希望在注册时完全隐藏用户名字段,并自动生成用户名。例如,如果我输入“Jesse”,系统会自动填充“jesse”,如果“jesse”已被占用,则填充“jesse1”。

据我所知,这确实无法实现。那么我最好的替代方案是什么?我能否在该字段旁边添加一条说明,引导用户使用真实姓名?

我们论坛的一大重点是使用真实身份,但用户往往倾向于选择令人困惑或分散注意力的用户名(例如出生年份、运动队、电影角色等)……我对此观察得相当一致……

期待任何建议。

如果您的版本提供对这些设置的访问权限,您可以采取以下措施:

激活以下站点设置:

  • “使用真实姓名作为用户名建议”
  • “显示注册表单的用户名说明”

然后编辑站点文本 js.user.username.instructions 的内容,使其类似于“请根据您的真实姓名设置用户名”。

我当前的设置如下所示:

结果如下:

您还应注意站点设置“在用户体验中优先显示用户名”,该设置默认已启用:

image

此外,通过一些自定义 CSS,您确实可以完全隐藏用户名字段(这将使站点文本标签失效)。但这可能会让用户感到困惑。在确定采用此方案之前,建议先进行测试:

.input-group.create-account__username {
  display: none;
}

参考:在您的网站上进行自定义 CSS 更改

网站文本编辑将大有裨益——谢谢。

我已经将“优先使用用户名”设置为关闭。

如果我通过 CSS 隐藏输入字段,表单验证是否仍然要求填写该字段?

值仍应被传递。display:none 的作用是让元素不可见,但并不会将其从页面代码中真正移除。因此,它并不是隐藏任何关键机密的安全方式,因为懂行的用户仍可以通过查看源代码获取这些信息。但用于此类场景,它却是一个便捷的方法。

我理解了——我只是想说,即使该元素仍然存在(仅仅是被隐藏了),它的值应该是空的,对吧?

“使用姓名作为用户名建议”这一设置的理念是:一旦填写了姓名字段,用户名字段将自动填充一个建议的用户名(该用户名仍可编辑)。因此,理论上,如果该字段被隐藏,这一过程将在后台自动进行,我们的技巧就能生效。

但是:我自己并未使用过此设置,刚才在测试(未隐藏)时发现,用户名字段并未显示任何建议。目前尚不确定是我遗漏了什么,还是我们发现了某个漏洞……