如何实现用户登录WordPress后重定向

wordpress-redirect-after-login-1024x512-1.jpgo_

你可能会惊讶于一个微小的改变会带来多大的不同,而当你不知道如何改变时,这样一个小功能又会给你带来多大的烦恼。

您可能已经注意到,用户登录后总是会被重定向到某个页面,而这对您的网站来说并不一定合理。用户登录后在哪里登陆对用户体验的影响可能比你想象的要大,可以节省他们的时间或防止混乱。

但要编辑这个不起眼的小功能,该从何下手呢?如果您想更改 WordPress 中的登录重定向页面,本教程将指导您使用插件或手动编写 PHP 代码。

为什么要在登录后重定向 WordPress 用户?

默认情况下,所有用户登录后都会被引导到管理仪表盘。虽然他们只能看到仪表板中他们有权访问的部分并与之互动(例如,订阅者只能编辑他们的个人资料),但这并不总是理想的行为。

根据你运行的网站类型,将新登录发送到其他地方可能更有意义。您甚至可能希望将不同角色的用户完全重定向到不同的页面(管理员重定向到仪表板,用户重定向到主页,等等)。

举几个例子说明你可能想更改的内容:

  • 将用户直接导向主页,避免与后端进行任何交互。
  • 将用户发送到他们的公开资料页面。
  • 让用户返回登录前的页面。
  • 对于会员制网站,将登录的用户发送到锁定文章或视频的页面。
  • 对于论坛,将用户发送到主论坛页面。
  • 对于电子商务网站,将购物者发送到商店页面、他们的愿望清单、购物车等。

许多主题和插件也会改变这一点。也许您已经注意到,用户在登录时突然被重定向到主页,因此想把它改回来。

虽然这只是一个很小的用户体验元素,许多网站可能永远不会注意到或改变它,但它却能对用户产生出人意料的巨大影响,让用户在浏览网站时不再那么迷茫。

遗憾的是,WordPress 没有内置更改登录重定向页面的设置。如果您想把用户发送到其他地方,就必须使用插件或自己编写代码。

如何在 WordPress 用户登录后重新定向

准备好进行这一微小而重要的更改了吗?您有两个选择: 下载一个插件,或者修改网站代码。

自己编写代码肯定有一些优点。如果你精通 PHP,就能完全控制登录重定向的操作。你不需要依赖那些可能无法满足你需要的插件,也不需要用更多的插件来拖累你的网站。

另一方面,并不是每个人都懂代码,一行错误的代码可能会把网站搞得一团糟,因此不建议初学者手动处理。插件更容易使用,而且不需要反复试验就能确保代码正常工作。

使用插件重定向

插件是一种只需简单设置就能快速完成任务的方法。在这里,我们挑选了三个最好的插件,供你用来编辑登录重定向 URL。

具有这种功能的插件并非只有这些;例如,WPForms(及其用户注册表单插件)和 WP User Manager 也提供登录重定向以及其他功能。

有些主题也会更改重定向页面,但很难专门搜索到有这种功能的主题。

但这三个插件主要用于登录重定向。它们的文件很小,不会添加任何不必要的功能。

LoginWP

loginwp-plugin.jpgo_

LoginWP

第一个插件是 LoginWP,它可以为特定用户和角色设置重定向规则,还可以更改用户注册重定向。

专业版可以与十多个不同的插件集成,最显著的是可以让你将用户重定向到他们登录的页面。如果你想实现这一目标,要么付费,要么试试其他插件。

不过,LoginWP 可以免费使用,而且功能强大,重定向规则简单。

要开始使用,请从插件 > 安装插件中安装 LoginWP,然后在侧边栏中查找新的 LoginWP 菜单项目。导航至 LoginWP > Redirections

loginwp-redirections.pngo_

使用 LoginWP 插件设置重定向规则。

这里有多个设置可以更改,但请查看 All Other Users 标题和 Login URL 选项。将其更改为你想要的 URL,然后点击 Save Changes。这将适用于所有登录用户。

如果要设置有条件的 URL 重定向,比如针对某些用户角色呢?在这种情况下,单击 Add New 按钮设置重定向规则。您可以根据单个用户、角色,甚至可能跨越多个角色的某些用户能力来设置规则。

loginwp-redirection-rules-1.pngo_

使用 LoginWP 插件建立条件规则。

设置 Order,以便在两条规则发生冲突时,优先选择数字最小的规则。然后在 Login URL 框中输入要重定向的网址,点击 Save Rule

就这么简单。您可以使用这些规则让管理员不受全局重定向规则的限制,或将某些用户引导至特殊页面。

Sky Login Redirect

sky-login-redirect-plugin.jpgo_

Sky Login Redirect

作为一款免费插件,Sky Login Redirect 功能非常强大。它可以让你设置重定向规则,自定义登录页面的外观,并启用一些小的调整,如自动选中 “记住我 ”框或删除页面上的某些链接。

专业版与 WooCommerce 或 Easy Digital Downloads 等多个插件集成,还增加了内容限制等额外的可选功能。

安装 Sky Login Redirect 后,请访问新的 Login Redirect 链接,确保您位于 Redirects 选项卡上。单击 Add Entry 开始操作。

sky-login-redirect-rules.pngo_

在 Sky Login Redirect 插件中设置重定向登录和注销。

选择是否重定向所有用户、特定用户或特定角色。然后选择是将登录和注销重定向到前一页、特定页面/URL,还是只重定向到 WordPress 管理页面。

拖放规则可更改重定向规则的执行顺序(例如当用户有多个角色时)。数字越小,优先级越高,因此先设置特定用户的规则,最后再设置一般规则。

完成后,单击右上角的 Save Changes

如果你想制定针对用户或角色的规则,你还需要设置一个额外的规则来适用于其他用户,即使只是保持默认的重定向到管理页面的行为。

WP Login and Logout Redirect

wordpress-login-logout-redirect.jpgo_

WP Login and Logout Redirect

如果您正在寻找最简单、最小的插件,那么 WP Login and Logout Redirect 可能就是您的不二之选。你可能对其他两个插件提供的任何额外功能都不感兴趣,而这个插件则直奔主题。

安装后,你会在侧边栏发现新的 Redirect Options 菜单。点击它,你会看到两个方框:Login Redirect URLLogout Redirect URL。输入你想要的 URL,然后点击 Save Changes,就大功告成了。

wordpress-login-logout-redirect-options.pngo_

WP Login and Logout Redirect 插件中的重定向选项。

该插件还增加了一项额外功能: 在 Users > All Users 中,你会看到一个新的 Last Login,它会显示用户最后登录的日期和时间。这是一个小而精的额外功能。

使用自定义代码重定向

如果您不想使用插件,或者插件不适合您,或者您想做一些插件无法处理的事情,那么您可能需要编写自己的自定义代码。只建议高级用户和熟悉 PHP 的用户这样做。当然,如果不放心,也可以聘请开发人员。

在插入和执行代码前,应备份网站,以防万一。如果出了问题,比如进入维护模式或陷入无尽的重定向循环,可以随时恢复备份。

要编写自己的自定义重定向代码,应先熟悉 login_redirect 过滤器。本页将解释该过滤器的工作原理,并在注释中提供了一些应用这些知识的示例。

下面是一个非常简单的示例:

function custom_login_redirect() {
return 'home_url()';
}
add_filter('login_redirect', 'custom_login_redirect');

这段代码将使所有用户在登录网站时重定向到主页。这就是它的作用!如果您愿意,可以将 “home_url()” 改为您选择的 URL。例如,将 “home_url()” 改为 “/blog”,用户就会跳转到网站的博客页面。

代码已经写好了,该放在哪里呢?您有两个选择: 第一种是直接编辑主题文件,第二种是使用插件插入代码。

如果您选择编辑主题文件,您应该先制作一个子主题,否则下次 WordPress 或主题更新时,您可能会发现重定向规则突然消失了。

虽然您可以通过 FTP 或代码编辑器编辑 WordPress 文件,但这并非必要。WordPress 自带文件编辑器,就在您的仪表板中。从外观 > 主题文件编辑器开始。在右侧的主题文件侧边栏中,查找主题函数文件(functions.php)并点击它。滚动到底部,将上述代码放入其中。然后点击更新文件

之后,退出并重新登录进行测试。一切都应按预期运行。

如果你不想处理子主题,一个更简单的方法是安装一个可以插入代码的插件。为此,我们将使用 Code Snippets。

code-snippets-plugin.jpgo_

Code Snippets

这样做的一大好处是,如果你想编辑代码或快速禁用代码,将非常容易找到。每个代码片段都包含在自己的页面中,易于访问。

安装代码片段插件,然后前往 Snippets > Add New。确保您在 Functions 选项卡上,然后粘贴您的代码或我们的示例。将其保持在 Run snippet everywhere 状态。完成后 Save Changes Activate

code-snippets-login-redirect.pngo_

使用 Code Snippets 插件添加新片段。

无论你选择哪种方法,都会发现新的登录规则运行完美。

但这不仅会影响你自己,也会影响其他人,所以一定要小心谨慎,并确保测试你的新规则。

小结

用户体验是网页设计的重要组成部分。它看似并不重要,但用户登录时最终进入的页面却会产生重大影响。您可以利用它将用户引导到您希望他们去的地方,或者防止混乱,节省他们的时间。

如果 WordPress 的默认登录重定向规则不合适,您可以手动或使用插件自行设置。后者最简单,但每种方法都有其优点。

文章网址:https://www.wpbull.com/jiqiao/14283.html