Aggiungi colonna personalizzata al pannello di amministrazione Utenti


28

Esistono 5 colonne predefinite denominate Nome utente Nome Ruolo ruoli e-mail negli UTENTI. Ora voglio aggiungere un'altra colonna con il suo numero di contatto.

Come posso raggiungere questo obiettivo??

Qui dove viene mostrata la scatola nera


Hai impostato il numero di telefono? Voglio dire, il tuo utente può aggiungere numeri di telefono nel suo profilo?
Robert hue,

no .. Voglio solo sapere come aggiungere .. non risolve solo quel numero di contatto .. può anche essere solo una colonna vuota
Rohil_PHPBeginner

1
Se il tuo sito aveva molte colonne personalizzate, potresti essere interessato a un plug-in chiamato Colonne amministrative.
Brian

puoi vedere questo blog con una spiegazione dettagliata tekina.info/…
Aniket Singh,

Risposte:


43

Ok, ecco il codice per consentire agli utenti di aggiungere numeri di telefono. Incolla questo codice completo nel file Functions.php. Ciò aggiungerà un nuovo campo sul profilo utente per "Numero di telefono" e aggiungerà una tabella utente di colonna sull'amministratore di WordPress per il telefono.

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 );

MODIFICARE

Per aggiungere due colonne è necessario apportare alcune modifiche. Confronta entrambi i codici per capire.

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 );

Usa di nuovo il codice. L'ho modificato in modo da poter vedere il campo del telefono anche nell'elenco degli utenti.
Robert hue,

Grande! ha funzionato .. Ma al momento di aggiungere l'utente perché non chiedono il numero di telefono?
Rohil_PHPBeginner,

Puoi per favore spiegare questo codice? Voglio aggiungere un altro campo ma mi sta mostrando un errore.
Rohil_PHPBinner

2
Suggerirei di aggiungerlo a un plug-in specifico per il sito poiché non ha nulla a che fare con l'aspetto del tema.
Helgatheviking,

1
Infine $user = get_userdata( $user_id );e return $returnsono assolutamente non necessaria. La variabile $usernon viene utilizzata dalla funzione e $returnnon è definita, pertanto non restituisce nulla.
LoicTheAztec
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.