Adicionar coluna personalizada ao painel de administração Usuários


28

Existem 5 colunas padrão denominadas Postagens de Função de Email de Nome de Usuário em USUÁRIOS. Agora eu quero adicionar mais uma coluna com o número de contato dele.

Como posso conseguir isso?

Aqui onde a caixa preta é mostrada


Você tem o número de telefone configurado? Quero dizer, seu usuário pode adicionar números de telefone ao perfil?
Robert tonalidade

não .. Eu só quero saber como adicionar .. não o seu corrigir esse número contato apenas .. sua lata b apenas uma coluna em branco também
Rohil_PHPBeginner

1
Se seu site tiver muitas colunas personalizadas, você poderá se interessar por um plug-in chamado Admin Columns.
Brian

você pode ver este blog com explicações detalhadas tekina.info/…
Aniket Singh

Respostas:


43

Ok, aqui está o código para permitir que seus usuários adicionem números de telefone. Cole esse código completo no arquivo functions.php. Isso adicionará um novo campo no perfil do usuário para "Número de telefone" e uma tabela de usuário da coluna no administrador do WordPress para telefone.

function new_contact_methods( $contactmethods ) {
    $contactmethods['phone'] = 'Phone Number';
    return $contactmethods;
}
add_filter( 'user_contactmethods', 'new_contact_methods', 10, 1 );


function new_modify_user_table( $column ) {
    $column['phone'] = 'Phone';
    return $column;
}
add_filter( 'manage_users_columns', 'new_modify_user_table' );

function new_modify_user_table_row( $val, $column_name, $user_id ) {
    switch ($column_name) {
        case 'phone' :
            return get_the_author_meta( 'phone', $user_id );
        default:
    }
    return $val;
}
add_filter( 'manage_users_custom_column', 'new_modify_user_table_row', 10, 3 );

EDITAR

Para adicionar duas colunas, você precisa fazer algumas alterações. Compare os dois códigos para entender.

function new_modify_user_table( $column ) {
    $column['phone'] = 'Phone';
    $column['xyz'] = 'XYZ';
    return $column;
}
add_filter( 'manage_users_columns', 'new_modify_user_table' );

function new_modify_user_table_row( $val, $column_name, $user_id ) {
    switch ($column_name) {
        case 'phone' :
            return get_the_author_meta( 'phone', $user_id );
        case 'xyz' :
            return '';
        default:
    }
    return $val;
}
add_filter( 'manage_users_custom_column', 'new_modify_user_table_row', 10, 3 );

Use o código novamente. Eu mudei para que você também possa ver o campo de telefone na lista de usuários.
Robert hue

Ótimo! funcionou .. Mas na hora de adicionar usuário, por que eles não estão pedindo o número de telefone?
precisa saber é o seguinte

Você pode explicar esse código? Quero adicionar mais um campo, mas está me mostrando um erro.
precisa saber é o seguinte

2
Eu sugiro que isso seja adicionado a um plugin específico do site, pois não tem nada a ver com a aparência do tema.
helgatheviking

1
Finalmente $user = get_userdata( $user_id );e return $returnabsolutamente não são necessários. A variável $usernão é usada pela função e $returnnão está definida, portanto não está retornando nada.
30516 LoicTheAztec as
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.