php - 检查 wordpress 上的用户名/密码

标签 php mysql wordpress

我想知道如何检查存储在 wordpress 上的 sql 数据库中的用户密码。我整天都在寻找这个,但解决方案似乎很简单,但我无法让它工作。

运行这段代码会返回一个空白页,所以我不知道发生了什么。 同样输入错误的用户名/密码,也不会显示错误消息。

看来我必须按照此处的说明使用 wp_signon():

但是当我在我的 bluehost 服务器上的 php 文件上运行这段代码时,也就是托管 wordpress 网站的那台服务器上,它不起作用。

<?php

custom_login("joe","joepass");

function custom_login($username, $password) {

$creds = array();
$creds['user_login'] = $username;
$creds['user_password'] = $password;
$creds['remember'] = true;

$user = wp_signon( $creds, false );

if ( is_wp_error($user) )
    echo $user->get_error_message();
}


// run it before the headers and cookies are sent
add_action( 'after_setup_theme', 'custom_login' );


?>

我在这里错过了什么?这可能是非常基本的事情,但我完全不知道该怎么做。

我的服务器托管两个网站。那么我不需要指定它需要使用哪个数据库和表来验证用户/密码吗?

如果我在“$user = wp_signon( $creds, false );”之后放置一个 echo 语句,它不会被打印出来。这是为什么?它不应该打印语句,wp_signon 返回一个 $user 吗?

很抱歉,如果答案很简单并且之前有人问过,能否请您指出一个解决方案。

谢谢。

最佳答案

您得到空白页的原因是您在 PHP 中触发了一个 fatal error 。

您已经创建了一个名为 custom_login() 的函数,它有两个必需的参数:用户名和密码。然后将该函数挂接到 after_setup_theme 操作中。

add_action( 'after_setup_theme', 'custom_login' );

这个 Hook 不会将任何参数传递给自定义登录,因为它需要两个参数,这就是问题的根源。

关于php - 检查 wordpress 上的用户名/密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32532652/

相关文章:

php - 在 laravel 5.5 中,此集合实例上不存在属性 [id]

php - redis pub/sub 在 php 中是否现实?

使用子选择的 MySQL 查询选择花费的时间太长

mysql - Sqoop导入: Command --password: command not found,--表:未找到命令

html - 具有自定义内容和覆盖的 WordPress 全屏菜单

css - Genesis 主导航和 Logo

php - 计算整个类别的销售额

memory-leaks - PHP-FPM占用太多内存

Java 列出连接到数据库的参数?

php - 查找WooCommerce可下载产品文件的src以在音频简码中显示