How to override wp-login.php

时间:2014-03-05 作者:shasi kanth

我想覆盖默认WordPress登录页:wp-login.php.

原因是,我想在文件的顶部编写一些自定义代码,检查后端的一些条件,并执行诸如将用户重定向到其他页面之类的操作。

我想这样做是因为我想在自定义文件中执行自己的身份验证逻辑,而不显示默认的WordPress登录表单。我的逻辑包括解析一些cookie和会话数据(特别是没有登录表单,可能是自定义表单)。

我真的想把我的逻辑写在header.php 子主题的文件,但不幸的是wp-login.php 文件不包括主题的头文件。

我不想编辑wp-login.php 我担心我所有的修改都会随着WordPress的更新而丢失。

有没有一种方法可以在WordPress更新后安全地覆盖WordPress登录页面而不会导致任何损失?

或者是否可以将所有请求路由到wp-login.php, 到一个自定义PHP文件,以便我可以在该文件中写入所有逻辑?

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

不要修改core,而是使用actions和hooks系统

add_action( \'login_init\', \'yourloginoverrides\' );

function yourloginoverrides() {
    // do some check and call wp_redirect if its true or whatever you wanted to do
}

结束

相关推荐

WP-LOGIN出现白屏,错误:无法修改标题信息

可能重复了许多问题,我之所以在这里发布这些问题都没有帮助,这里是出现在Wp登录上的日志。php页面。Notice: automatic_feed_links is deprecated since version 3.0! Use add_theme_support( \'automatic-feed-links\' ) instead. in /home/truckgua/public_html/test2/wp-includes/functions.php on line 2871