WordPress用户登录后重定向设置方法详解
你是否曾想过,一个微小的调整竟能带来如此显著的变化?当面对如何改变时,一个小功能又可能成为令人头疼的难题。你是否注意到,用户登录后总是被自动跳转到某个特定页面,而这对于你的网站来说,未必是最理想的选择?用户登录后的初始页面选择,对整体用户体验的影响可能远超你的想象,它既能节省用户时间,又能避免不必要的混乱。但当你想要修改这个看似不起眼的功能时,该如何着手呢?如果你希望在 WordPress 中更改登录后的重定向页面,本教程将为你提供使用插件或手动编写 PHP 代码的详细指导。
为什么要考虑在登录后重定向 WordPress 用户?
默认情况下,所有登录用户都会被引导至管理仪表盘。尽管他们只能访问仪表板中权限允许的部分并进行相应互动(例如,订阅者只能编辑个人资料),但这并不总是最佳选择。根据你的网站类型,将新登录用户直接发送到其他页面可能更为合理。你甚至可以设置不同角色的用户被重定向到不同的页面(管理员重定向至仪表板,普通用户重定向至主页等)。以下是一些你可能想要调整的场景:
– 将用户直接导向主页,避免不必要的后台交互。
– 将用户发送到他们的个人资料页面。
– 让用户返回登录前的页面。
– 对于会员制网站,将登录用户重定向至访问受限的文章或视频页面。
– 对于论坛,将用户重定向至主论坛页面。
– 对于电子商务网站,将购物者重定向至商店页面、愿望清单或购物车等。
许多主题和插件也会更改这一默认设置。也许你已经注意到,用户登录时突然被重定向至主页,因此想要将其改回原始设置。虽然这只是一个看似微小的用户体验元素,许多网站可能从未关注或调整过它,但它对用户的影响却可能出人意料地巨大,帮助用户在浏览网站时更加清晰明确。
遗憾的是,WordPress 没有提供内置的登录重定向页面设置选项。如果你希望将用户重定向至其他页面,就必须借助插件或自行编写代码。
如何在 WordPress 中实现登录后的重定向?
准备好进行这一微小而重要的调整了吗?你有两个主要选择:下载一个插件或修改网站代码。
自己编写代码确实有一些优势。如果你精通 PHP,就能完全掌控登录重定向的操作。你无需依赖可能无法完全满足你需求的插件,也不必担心因使用过多插件而拖慢网站速度。然而,并非每个人都熟悉代码,一行错误的代码可能会让你的网站陷入混乱,因此不建议初学者尝试手动操作。相比之下,插件通常更易于使用,且无需反复试验即可确保功能正常。
使用插件进行重定向
插件提供了一种简单设置即可快速完成任务的方式。在这里,我们推荐三个功能强大的插件,它们专门用于编辑登录重定向 URL。
除了这三个插件,还有其他一些插件也提供登录重定向功能,例如 WPForms(及其用户注册表单插件)和 WP User Manager。虽然有些主题也会更改重定向页面,但专门搜索这类主题可能并不容易。不过,以下三个插件主要专注于登录重定向,它们的文件体积小,不会添加任何不必要的功能。
1. **LoginWP**
LoginWP 是第一个推荐的插件,它允许你为特定用户和角色设置重定向规则,同时还能更改用户注册后的重定向。专业版可以与十多个不同的插件集成,其中最显著的是可以让你将用户重定向到他们登录的页面。虽然要实现这一高级功能需要付费,但你也可以尝试其他插件。不过,LoginWP 的免费版本已经非常强大,其重定向规则设置简单直观。
要开始使用 LoginWP,请从插件 > 安装插件中搜索并安装 LoginWP,然后在侧边栏中找到新的 LoginWP 菜单项。导航至 LoginWP > Redirections。在这里,你可以更改多个设置,但请特别关注 All Other Users 标题和 Login URL 选项。将其修改为你想要的 URL,然后点击 Save Changes。这将适用于所有登录用户。如果你想要设置有条件的 URL 重定向,例如针对某些用户角色,只需单击 Add New 按钮即可。你可以根据单个用户、角色,甚至跨越多个角色的用户权限来设置规则。设置 Order 以确保在规则冲突时优先选择数字最小的规则,然后在 Login URL 框中输入目标网址,点击 Save Rule。操作如此简单,你甚至可以让管理员不受全局重定向规则的限制,或将某些用户引导至特殊页面。
2. **Sky Login Redirect**
Sky Login Redirect 是一款免费插件,功能非常强大。它可以让你设置重定向规则,自定义登录页面的外观,并启用一些小调整,如自动选中“记住我”框或删除页面上的某些链接。专业版与 WooCommerce 或 Easy Digital Downloads 等多个插件集成,还提供了内容限制等额外功能。
安装 Sky Login Redirect 后,请访问新的 Login Redirect 链接,并确保你位于 Redirects 选项卡上。单击 Add Entry 开始设置。在这里,你可以选择是否重定向所有用户、特定用户或特定角色。然后选择是将登录和注销重定向到前一页、特定页面/URL,还是仅重定向到 WordPress 管理页面。通过拖放可以更改重定向规则的执行顺序(例如当用户拥有多个角色时)。数字越小,优先级越高,因此建议先设置特定用户的规则,最后再设置一般规则。完成后,单击右上角的 Save Changes。如果你需要为用户或角色制定特定规则,还需要设置一个适用于其他用户的额外规则,即使只是保持默认的重定向到管理页面的行为。
3. **WP Login and Logout Redirect**
如果你正在寻找最简单、最小的插件,那么 WP Login and Logout Redirect 可能正是你的理想选择。你可能对其他两个插件提供的额外功能不感兴趣,而这个插件则专注于核心的重定向功能。
安装后,你会在侧边栏发现新的 Redirect Options 菜单。点击它,你会看到两个输入框:Login Redirect URL 和 Logout Redirect URL。输入你想要的 URL,然后点击 Save Changes,即可完成设置。该插件还增加了一项额外功能:在 Users > All Users 页面中,你会看到一个新的 Last Login 列,它会显示用户最后登录的日期和时间。这是一个实用的小功能。
使用自定义代码进行重定向
如果你不想使用插件,或者插件无法满足你的需求,或者你希望实现插件无法处理的高级功能,那么可能需要编写自己的自定义代码。我们建议只有高级用户和熟悉 PHP 的用户尝试这种方法。当然,如果你不确定,也可以聘请专业的开发人员。
在插入和执行代码之前,应确保备份你的网站,以防万一。如果出现问题,例如进入维护模式或陷入无限重定向循环,你可以随时恢复备份。要编写自己的自定义重定向代码,首先需要熟悉 login_redirect 过滤器。本页将解释该过滤器的工作原理,并在注释中提供了一些应用这些知识的示例。
以下是一个非常简单的示例代码:
“`php
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 插件。这样做的一大好处是,如果你想编辑代码或快速禁用代码,将非常容易找到。每个代码片段都包含在自己的页面中,易于访问。
安装代码片段插件后,前往 Snippets > Add New。确保你位于 Functions 选项卡上,然后粘贴你的代码或我们的示例。将其保持在 Run snippet everywhere 状态。完成后 Save Changes 并 Activate。使用 Code Snippets 插件添加新片段。
无论你选择哪种方法,都会发现新的登录规则运行完美。但请记住,这不仅会影响你自己,也会影响其他用户,因此一定要小心谨慎,并确保测试你的新规则。
小结
用户体验是网页设计的重要组成部分。它看似微不足道,但用户登录后最终进入的页面却可能产生重大影响。你可以利用这一功能将用户引导到你希望他们去的地方,或者防止混乱,节省他们的时间。如果 WordPress 的默认登录重定向规则不合适,你可以手动设置或使用插件进行调整。后者最简单,但每种方法都有其独特的优势。