Додайте спеціальний стовпець до панелі адміністратора користувачів


28

За замовчуванням є 5 стовпців з назвою Ім'я користувача Ім'я Повідомлення про роль ролі в USERS. Тепер я хочу додати ще одну колонку зі своїм контактним номером.

Як я можу досягти цього ??

Тут показана чорна скринька


У вас налаштування номера телефону? Я можу сказати, чи може ваш користувач додавати номери телефонів у свій профіль?
Роберт відтінок

ні .. Я просто хочу знати, як додати .. його не виправити лише цей контактний номер .. його можна також просто порожній стовпець
Rohil_PHPBeginner

1
Якщо на вашому сайті було багато спеціальних стовпців, вас може зацікавити плагін під назвою стовпці адміністратора.
Брайан

Ви можете побачити цей блог із детальним поясненням tekina.info/…
Singh

Відповіді:


43

Гаразд, ось код, який дозволяє вашим користувачам додавати телефонні номери. Вставте цей повний код у файл function.php. Це додасть нове поле у ​​профілі користувача для "Номер телефону" та додасть таблицю користувачів стовпця в адміністраторі WordPress для телефону.

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

EDIT

Щоб додати два стовпці, потрібно внести деякі зміни. Порівняйте обидва коди, щоб зрозуміти.

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

Використовуйте код ще раз. Я змінив його, щоб ви могли побачити поле телефону і в списку користувачів.
Роберт відтінок

Чудово! працював .. Але на момент додавання користувача чому вони не запитують номер телефону?
Rohil_PHPBeginner

Чи можете ви поясніть цей код? Я хочу додати ще одне поле, але воно показує мені помилку.
Rohil_PHPBeginner

2
Я б запропонував, щоб це було додано до плагіну для сайту, оскільки він не має нічого спільного з появою теми.
helgatheviking

1
Нарешті $user = get_userdata( $user_id );і return $returnабсолютно не потрібні. Змінна $userне використовується функцією і $returnне визначена, тому нічого не повертає.
LoicTheAztec
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.