也许真的很晚才回答。您需要执行以下操作。由于没有默认的验证方法,您需要遵循几个步骤。这里我将使用session变量检查生成的cookie是否匹配。首先需要启动会话。
add_action(\'init\', \'myStartSession\', 1);
add_action(\'wp_logout\', \'myEndSession\');
add_action(\'wp_login\', \'myEndSession\');
function myStartSession() {
if(!session_id()) {
session_start();
}
}
function myEndSession() {
session_destroy ();
}
然后在要显示错误消息的地方使用以下代码。
if ( post_password_required() ) {
$session_id = \'wp-postpass_\' . get_the_ID();
//onload
$current_cookie = wp_unslash($_COOKIE[ \'wp-postpass_\' . COOKIEHASH ]);
//get old cookie
$old_cookie = isset( $_SESSION[ $session_id ] ) ? $_SESSION[ $session_id ] : \'\';
//set new session
$_SESSION[ $session_id ] = $current_cookie;
if ( $current_cookie != $old_cookie && !empty( $old_cookie ) ){
error_notification(\'<b>Error!</b> Authentication failed!\');
}
}
就这样!!