【问题标题】:Display "Real Name" in Mediawiki instead of user name在 Mediawiki 中显示“真实姓名”而不是用户名
【发布时间】:2010-10-28 16:25:30
【问题描述】:

在 MediaWiki 中,我想更改历史记录中的用户名,并将最近更改为在用户首选项中输入的“真实姓名”。例如,在最近的变化中,我看到了:

(diff) (hist) . . Somepage‎; 11:03 . . (+285) . . Coolguy123 (Talk | contribs | block)

但我想看看这个:

(diff) (hist) . . Somepage‎; 11:03 . . (+285) . . Billy Bob (Talk | contribs | block)

但是,我无权访问后端,因此无法破解 PHP。这可能只使用JavascriptCSS 吗? (我可以编辑MediaWiki:Common.jsMediaWiki:Common.css

【问题讨论】:

    标签: javascript css mediawiki


    【解决方案1】:

    您确实希望将每个用户的用户名更改为他的真实姓名。根据您拥有的用户数量,这可能需要一段时间,并且从那时起用户必须以真实姓名登录(旧用户名将不再有效)。除非您的系统管理员安装了Extension:Renameuser,并且您被授予“官僚”权限,否则您也无法自行操作。

    对于页面历史记录,可以使用 ?action=credits 对同一页面进行 AJAX 请求,以获取所有用户名-真实姓名对(尝试“解析”HTML),尽管这样需要额外的 HTTP 请求一个被大量使用的功能。当用户单击按钮时,我会让客户端 JavaScript 仅请求并显示真实姓名。这样一来,仅使用历史记录来快速识别 wiki 破坏行为就不会受到性能损失的影响。

    Extension:PageHistoryRealnames 将是服务器管理员可以安装而不重命名用户的内容(不确定最近的更改部分)。但是,性能影响将是他可能拒绝这样做的原因之一。虽然 MediaWiki 除了存储用户 ID 号之外,还存储了用户用户名的单独副本以及修订信息,但真实姓名不是(部分原因是它可以在用户的​​偏好中更改)。 (这就是为什么当维基百科的大贡献者要求更改用户名时,可能需要一段时间,因为每个历史条目都需要更新。)这意味着必须使用 SQL“LEFT JOIN”,这会导致速度变慢。

    【讨论】:

      【解决方案2】:

      如果您可以编辑 MediaWiki 命名空间,您就拥有管理员权限,是吗?你可以看看Extension:ShowRealUsernames。最好说服后端人员安装它,或者看看您是否可以将其合并到您提到的公共页面中。

      注意:即使您可以从某个位置导入真实姓名,但每个用户都可以使用“我的偏好”覆盖这些姓名。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-06
        • 1970-01-01
        • 2012-12-10
        • 1970-01-01
        • 2013-03-18
        • 1970-01-01
        相关资源
        最近更新 更多