对于演示环境,我想分别用“ demo”和“ demo”字符串预填充wp-login表单的用户名和密码字段。
因此,用户只需单击“登录”按钮即可连接到管理区域。
有办法吗?也许带钩?
感谢您的建议
对于演示环境,我想分别用“ demo”和“ demo”字符串预填充wp-login表单的用户名和密码字段。
因此,用户只需单击“登录”按钮即可连接到管理区域。
有办法吗?也许带钩?
感谢您的建议
Answers:

您可以全局声明表单字段值并对其进行预填充。
这将覆盖通过“记住我”-复选框完成的所有设置。
/**
* Changes the default user name to "DEMO"
*
* @return string $user_login
*/
function login_form_username()
{
global $user_login;
return $user_login = 'DEMO';
}
add_action( 'login_head', 'login_form_username' );
我没有发现任何可以用来预填充的内容,因此我要添加注释。很高兴/遗憾的是,有整套用于管理UI的样式表。因此.wrap,与h2给出了很好的样式。该函数被挂钩到admin挂钩的其他字段挂钩。优先级是0将其设置在其他字段之上。
/**
* Adds a note beyond the user login name & password field
*
* @return string
*/
function login_form_note()
{
print '<div class="wrap"><h2 style="text-align: center;">The Password is "DEMO"</h2></div>';
}
add_action( 'login_form', 'login_form_note', 0 );
由于有人会得到一个视觉证据,表明他默认情况下输入了现有用户名,因此,我将以下内容添加到您的functions.php文件中,以避免告诉用户名是否正确:
/**
* Hide wrong login names
*
* @return string
*/
function no_login_error()
{
return __( 'Wrong Credentials.' );
}
add_filter( 'login_errors', 'no_login_error' );
笔记:
login_enqueue_scripts钩子。login_headerurl过滤网址的过滤器替换徽标后面的链接。title可以使用替换链接login_headertitle。两者都触发多站点以及单个站点设置。login_message过滤器更改登录消息。您可以使用以下代码自动登录用户:
add_action('init', 'auto_login');
add_action('admin_init', 'auto_login');
function auto_login() {
if (!is_user_logged_in()) {
//by user name
$user = get_user_by( 'login', 'demo' );
//Or by user id, 2 being the ID of the demo user
//$user = get_userdata(2);
wp_set_current_user($user->ID, $user->user_login);
wp_set_auth_cookie($user->ID);
do_action('wp_login', $user->user_login);
}
}
get_user_by( 'login', 'demo' );
init钩够吗?它无处不在...
这是3种方法:
第一种方法是使用wp_signon挂钩
$creds = array();
$creds['user_login'] = 'example';
$creds['user_password'] = 'plaintextpw';
$creds['remember'] = true;
$user = wp_signon( $creds, false );
if ( is_wp_error($user) ) {
echo $user->get_error_message();
}
第二种方法是使用jQuery .val()并将其添加到您的登录页面
$("#user_login").val('username');
$("#user_pass").val('password');
最后一种方法是编辑wp-login.php文件(注意,尽管可以使用,但不建议这样做)。
jQuery( document ).ready( function( $ )调用中以使$该函数可用。您也jQuery只需要为此打电话。3)好吧,好吧...让我们什么也没说:)
jQuery(document...标签中。3)从来没有发生过。