钩子文档

manage_users_custom_column

💡 云策文档标注

概述

manage_users_custom_column 是一个 WordPress 过滤器钩子,用于自定义用户列表表中自定义列的显示输出。它允许开发者修改或添加特定列的内容,基于列名和用户ID。

关键要点

  • 这是一个过滤器钩子,用于过滤用户列表表中自定义列的输出。
  • 参数包括 $output(自定义列输出,默认为空)、$column_name(列名)和 $user_id(当前列出用户的ID)。
  • 在 WP_Users_List_Table::single_row() 和 WP_MS_Users_List_Table::column_default() 中被调用,用于生成用户列表的行内容。
  • 自 WordPress 2.8.0 版本引入。

代码示例

// 添加自定义列到用户列表表
function custom_add_user_id_column($columns) {
    $columns['user_id'] = 'User ID';
    return $columns;
}
add_filter('manage_users_columns', 'custom_add_user_id_column');

// 为自定义列添加内容
function custom_show_user_id_column_content($value, $column_name, $user_id) {
    $user = get_userdata( $user_id );
    if ( 'user_id' == $column_name )
        return $user_id;
    return $value;
}
add_filter('manage_users_custom_column', 'custom_show_user_id_column_content', 10, 3);

注意事项

  • 使用此钩子时,需要先通过 manage_users_columns 过滤器添加自定义列,然后使用 manage_users_custom_column 来填充列内容。
  • 注意参数顺序:$value(输出)、$column_name(列名)、$user_id(用户ID),在 add_filter 中设置优先级和参数数量。
  • 用户贡献笔记中提到 manage_users_columns 钩子仍然存在,可用于添加或移除列,但需确认其文档和代码中的可用性。

📄 原文内容

Filters the display output of custom columns in the Users list table.

Parameters

$outputstring
Custom column output. Default empty.
$column_namestring
Column name.
$user_idint
ID of the currently-listed user.

Source

$row .= apply_filters( 'manage_users_custom_column', '', $column_name, $user_object->ID );

Changelog

Version Description
2.8.0 Introduced.

User Contributed Notes

  1. Skip to note 3 content

    //Adds Custom Column To Users List Table
    function custom_add_user_id_column($columns) {
        $columns['user_id'] = 'User ID';
        return $columns;
    }
    add_filter('manage_users_columns', 'custom_add_user_id_column');
    //Adds Content To The Custom Added Column
    function custom_show_user_id_column_content($value, $column_name, $user_id) {
        $user = get_userdata( $user_id );
    	if ( 'user_id' == $column_name )
    		return $user_id;
        return $value;
    }
    add_filter('manage_users_custom_column',  'custom_show_user_id_column_content', 10, 3);