你如何修改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 :: _()’进行字符串输出 – 它们应该是.

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些