Joomla 如何让未注册用户单击';提交文章';然后重定向到登录表单,但不是403错误?

Joomla 如何让未注册用户单击';提交文章';然后重定向到登录表单,但不是403错误?,joomla,login,http-status-code-403,Joomla,Login,Http Status Code 403,我的网站使用joomla 2.5,我在主菜单上添加了一个链接以提交新文章,但当未注册用户单击此链接时,它将显示403错误,“您无权访问此服务器上的此URL。”但我不希望显示此页面,我希望网站重定向到登录表单 我该怎么做? 修改/templates/system/error.php 定义('u-JEXEC')或死('Restricted access') 并将以下代码置于上述代码之后: $refereto=$\u服务器['REQUEST\u URI']$提及= base64_编码($referet

我的网站使用joomla 2.5,我在主菜单上添加了一个链接以提交新文章,但当未注册用户单击此链接时,它将显示403错误,“您无权访问此服务器上的此URL。”但我不希望显示此页面,我希望网站重定向到登录表单

我该怎么做?

修改/templates/system/error.php

定义('u-JEXEC')或死('Restricted access')

并将以下代码置于上述代码之后:

$refereto=$\u服务器['REQUEST\u URI']$提及= base64_编码($refereto)

如果($this->error->code='403')){ 标题('Location:index.php?option=com_user&view=login&refereto='。$refereto); die();}


只需搜索joomla 403 redirect to login,以上是第一个结果

如果你不想破解核心文件(这是个坏主意,因为它可能会在下一次安全更新中消失),有更简单、内置的方法可以做到这一点

  • 将“提交新文章”链接更改为“已注册”(或您已设置的任何组),这样网站用户在登录之前不会看到菜单。

    如果您不想对未登录的用户隐藏菜单

  • 更复杂但绝对值得的方法是创建一个“”

  • 创建来宾组后,与第一个选项一样,将现有菜单项更改为“已注册”(或已设置的任何组)访问权限

  • 然后创建一个名称相同的“提交新文章”菜单项,但将其链接到“用户登录”菜单类型,并设置其对刚创建的“来宾”组的访问权限

  • 将“登录重定向”选项设置为真正的“提交新文章”菜单的URL