Twig 在Craft 3中使用{%requireLogin%}时,如何设置自定义重定向url?

Twig 在Craft 3中使用{%requireLogin%}时,如何设置自定义重定向url?,twig,craftcms,Twig,Craftcms,我正在使用Craft CMS(3)创建一个“会员专用”网站,用户必须先登录才能看到网站的前端。我想知道用户登录后如何设置默认重定向 我使用主布局模板顶部的{%requireLogin%}标记让仅成员部分工作,该标记重定向到/login,或者在我的情况下,将config/general.php中的loginPath的值更改为/admin/login(Craft默认为/login)。因此,在每个前端页面视图上,如果用户未登录,它将重定向到控制面板(CP)登录 layout.twig: {% requ

我正在使用Craft CMS(3)创建一个“会员专用”网站,用户必须先登录才能看到网站的前端。我想知道用户登录后如何设置默认重定向

我使用主布局模板顶部的
{%requireLogin%}
标记让仅成员部分工作,该标记重定向到
/login
,或者在我的情况下,将
config/general.php
中的
loginPath
的值更改为
/admin/login
(Craft默认为
/login
)。因此,在每个前端页面视图上,如果用户未登录,它将重定向到控制面板(CP)登录

layout.twig:

{% requireLogin %}
<!DOCTYPE html>
<html lang="en-US">
<head>
...
文件:

默认功能似乎是,Craft会将您重定向到您来自的任何路线。因此,如果您在
/resources/
点击该站点,它会将您重定向到登录路径-成功登录后,它会将您踢回
/resources/


我想知道是否有一种方法可以设置一个“默认”重定向,这样无论您来自哪个页面,在用户登录后,他们每次都会被重定向到同一个位置。

标记{%requireLogin%}不带任何参数。事实上,如果您尝试这样做,您应该会得到一个细枝解析错误

{%requireLogin'some/path%}


路径由loginPath配置设置指定,该设置应支持查询字符串。

我知道我晚了一年,但它是这样的:

您可以使用
postLoginRedirect
general配置设置(在
/config/general.php
中定义)

用户从登录后应重定向到的路径 前端站点。如果用户 访问登录页面(由loginPath配置设置指定) 当他们已经登录时


这个答案有点漏洞百出。OP从未建议使用参数来
requireLogin
。此外,如果您直接从@brandonkelly对GitHub问题的回复中复制粘贴此内容,那么最好提及您答案的来源
...
    'loginPath' => 'admin/login',
...