微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

你如何修改Joomla中的登录表单?

我想知道如何更改Joomla登录表单上的文本.
例如:

用户名到Usr,
从密码到密度,
和其他文字也.

也许以前曾问过这个问题,但我找不到任何东西.

有谁知道如何做到这一点?

解决方法

您可以使用模板覆盖来执行此操作,但这不会优雅地处理升级对模板的更改,并且您假定将新字符串直接放在模板中 – 这将不容易使用多语言.

正确的方法是(通过adjamaflip提到),通过语言文件.

Joomla的主要登录页面是通过’com_users’组件,尽管还有hbit提到的’mod_login’模块.这个过程对两者都有效,它们只有略微不同的文件和字符串来覆盖(你可能想要覆盖它们).

如果您查看任何组件或模块的模板,您会看到它们具有如下代码部分:

<?PHP echo JText::_('MOD_LOGIN_VALUE_USERNAME') ?>
<?PHP echo JText::_('COM_USERS_LOGIN_USERNAME_LABEL') ?>

这基本上是说’在这里插入WHATEVERSTRING的翻译文本’.这个翻译后的文本存储在相应的语言文件中,对于’com_users’组件,它将位于’/language/LANG/LANG.com_users.ini’中.LANG认为’en-GB’,所以可能适合你在’/language/en-GB/en-GB.com_users.ini’中你会找到如下行:

COM_USERS_LOGIN_USERNAME_LABEL="User Name"

现在,您可以在那里编辑该文件.这将立即显示在您的网站上,并将正确处理多语言.但同样,这将无法在升级中幸存下来(如果Joomla发布了一个更新该语言文件的新版本,它将会破坏您的更改).

为了处理升级,他们在Joomla 1.6中添加一个用于语言覆盖的新功能.您可以在“/language/overrides/LANG.override.ini”中将任何语言文件(任何组件/模块/等)的替换添加到单独的覆盖位置.例如,添加以下行:

COM_USERS_LOGIN_USERNAME_LABEL="Usr"

现在你已经覆盖了那个语言字符串.添加“MOD_LOGIN_VALUE_USERNAME”等行,以根据需要覆盖登录模块和其他字符串.

现在,如果您升级Joomla,您将对这些登录模板进行任何更改,但不会丢失文本更改.您可以为您的网站提供的每种语言应用相同的流程,覆盖将愉快地生活在一起.这也适用于第三方组件和模块,只要它们使用’JText :: _()’进行字符串输出 – 它们应该是.

原文地址:https://www.jb51.cc/html/224732.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐