仅当用户是管理员时才显示 add_filter

Show add_filter only if user is admin

我有这段代码,并且只希望在用户以管理员身份连接时发生。 (显示限制计数)

/**
 * Display how many spots are left in the choice label when using the GP Limit Choices perk
 * http://gravitywiz.com/gravity-perks/
 */

add_filter( 'gplc_remove_choices', '__return_false' );

add_filter( 'gplc_pre_render_choice', 'my_add_how_many_left_message', 10, 5 );



function my_add_how_many_left_message( $choice, $exceeded_limit, $field, $form, $count ) {

    $limit         = rgar( $choice, 'limit' );
    $how_many_left = max( $limit - $count, 0 );

    $message = "($how_many_left spots left)";

    $choice['text'] = $choice['text'] . " $message";

    return $choice;
}

谢谢!!!

检查当前用户的管理员能力可能有助于解决问题

add_filter( 'gplc_remove_choices', function ( $result ) {
    return current_user_can( 'administrator' ) ? false : $result;
} );

add_filter( 'gplc_pre_render_choice', 'my_add_how_many_left_message', 10, 5 );


function my_add_how_many_left_message( $choice, $exceeded_limit, $field, $form, $count ) {
    if ( ! current_user_can( 'administrator' ) ) {
        return $choice;
    }

    $limit         = rgar( $choice, 'limit' );
    $how_many_left = max( $limit - $count, 0 );

    $message = "($how_many_left spots left)";

    $choice['text'] = $choice['text'] . " $message";

    return $choice;
}

根据 WordPress:每个用户都有其角色,每个角色都有其能力。 检查能力而不是角色可能对解决这个问题很有用。