2016-11-29 81 views
1

我正在构建一个Silverstripe网站,允许用户注册一些东西。我有几页在CMS中将页面可见性设置为“登录用户”,这很棒,但默认操作是重定向到/ Security/Login。是否有一种简单的方法将常规页面的重定向更改为goto etc/Account/Login,并保留CMS用户的默认/安全/登录?Silverstripe - Admin登录表格/会员登录表格

感谢

回答

1

与其他插件的帮助下,我使用的代码

public function onBeforeSecurityLogin() 
{ 
     $backUrl = $this->owner->getRequest()->getVar('BackURL'); 
     if (!strstr($backUrl, '/admin/')) { 
      if (Controller::curr()->class != 'Account') { 
       $link = 'account/login' . '?BackURL=' . urlencode($backUrl); 
       return $this->owner->redirect($link); 
      } 
     } 
    } 

这一点,我还延长了安全类来创建自己的处理程序和表单登录

0

您可以设置?BackURL=/Account/Login在链接中,还是在Session

或者设置配置变量,如:

Security: 
    login_url: Account/Login 
+0

这只会为所有用户设置它们,而不是一个用户类型的链接和另一个用户类型的链接 – Barry