WordPress前台登录和注册代码介绍

724 ℃

WordPress如何做前台登录和注册,下面web建站小编给大家介绍一下!

1、为登录页面创建一个自定义页面模板。例如login.php。

<?php
/* Template Name: 登录 */ 
 wp_login_form(); 
?>

2、在后台 – 页面 – 新建页面,新建名称为 login 的页面,页面属性选择登录模板。

如果我们希望使用新的登录页面login.php替换WordPress默认的wp-login.php页面, 您可以在functions.php主题的中添加以下代码

function redirect_login_page() {
  $login_page  = home_url( '/login/' );
  $page_viewed = basename($_SERVER['REQUEST_URI']);
 
  if( $page_viewed == "wp-login.php" && $_SERVER['REQUEST_METHOD'] == 'GET') {
    wp_redirect($login_page);
    exit;
  }
}
add_action('init','redirect_login_page');

注意:将$login_page变量更改为您自己的登录页面。

在我们成功登录后,登录页面可以按预期工作。但是,如果发生错误(例如,提交无效的用户名和密码组合或提交空白字段时),我们也将被丢弃wp-login.php。要解决此问题,请在中添加以下功能functions.php。

function login_failed() {
  $login_page  = home_url( '/login/' );
  wp_redirect( $login_page . '?login=failed' );
  exit;
}
add_action( 'wp_login_failed', 'login_failed' );
 
function verify_username_password( $user, $username, $password ) {
  $login_page  = home_url( '/login/' );
    if( $username == "" || $password == "" ) {
        wp_redirect( $login_page . "?login=empty" );
        exit;
    }
}
add_filter( 'authenticate', 'verify_username_password', 1, 3);

最后,当我们从站点注销时,我们还将被重定向到。因此,我们还需要在注销时指定重定向URL,就像这样。

错误信息

在我们输入错误的用户名、密码、邮箱等资料时,会向用户显示错误信息,我们可以使用$_GET。

将此代码放在下面的登录页面模板中。

$login  = (isset($_GET['login']) ) ? $_GET['login'] : 0;</pre>

上面的代码将检查login变量是否包含值,否则将设置为0。然后,我们将根据的值显示不同的通知消息$error,如下所示。

if ( $login === "failed" ) { 
echo '<p class="login-msg"><strong>错误:</strong>用户名和/或密码无效!</p>'; 
} elseif ( $login === "empty" ) {
 echo '<p class="login-msg"><strong>错误:</strong>用户名和/或密码不能为空!</p>'; 
} elseif ( $login === "false" ) {
 echo '<p class="login-msg">您已登出!</p>'; 
}

wordpress利用mysql让文章 ID重新排列

wordpress如何在搜索结果中排除指定分类的文章

wordpress如何设置自动发布文章功能

wordpress如何用代码自动清空回收站

wordpress前端页面如何上传图片

标签: wordpress

上面是“WordPress前台登录和注册代码介绍”的全面内容,想了解更多关于 wordpress 内容,请继续关注web建站教程。

当前网址:https://m.ipkd.cn/webs_2093.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

web前端有哪些前端框架
vue项目打包后自动生成版本号,判断是否清空缓存(亲测有效)
js如何动态改版网页标题
用php给阿里云写一个接口,判断域名是否已经被注册过
jquery向input赋值有时会失效是什么原因