1

我想更改消息“您现在已注销”。,当用户注销时。
有什么钩子可以用来修改它吗?

我试过使用login_messagelogin_error过滤,但不起作用。
我不想修改wp-login.php

4

3 回答 3

1

您需要在您的functions.php中添加此代码

add_filter( 'login_message', 'so_13641385_custom_logout_message' );
add_action( 'login_head','so_13641385_custom_login_head' );

// Detect logout or login, and display correspondent message
function so_13641385_custom_logout_message() 
{
    //check to see if it's the logout screen
    if ( isset($_GET['loggedout']) && TRUE == $_GET['loggedout'] ) 
        $message = "<p class='custom-message'>Custom logged out Message.</p><br />";

    //they are logged in
    else 
        $message = "<p class='custom-message'>Custom Login Message.</p><br />";

    return $message;
} 

//outputs the CSS needed to blend custom-message with the normal message
function so_13641385_custom_login_head() 
{
    ?>
    <style type="text/css">
    #login_error, .message { display:none; }
    .custom-message {
        -moz-border-radius:3px 3px 3px 3px;
         border-style:solid;
         border-width:1px;
         margin:0 0 16px 8px;
         padding:12px;
    }
    .login .custom-message {
        background-color:#FFFFE0;
        border-color:#E6DB55;
    }
    </style>
    <?php
}

用您的消息替换自定义消息

于 2012-11-30T11:18:07.407 回答
0

使用过滤器login_messages而不是login_message

function custom_logout_message(){
  return 'You are not login!';
}
add_filter( 'login_messages', 'custom_logout_message' );
于 2017-12-26T11:23:25.777 回答
0

改进 brasofilo 的回答:

  1. 该问题不要求提供登录消息。提供这些是多余的。
  2. 使用现有的消息类比定义自定义类并尝试转置 CSS 样式要优越得多。
  3. 最好在可用时使用过滤器。

代码:

add_filter( 'wp_login_errors', 'my_logout_message' );

function my_logout_message( $errors ){

    if ( isset( $errors->errors['loggedout'] ) ){
        $errors->errors['loggedout'][0] = 'Custom Logged-Out Message.';
    }

    return $errors;
}
于 2016-01-22T03:09:04.710 回答