diff --git a/src/SettingsPage.php b/src/SettingsPage.php index 3f0e838..c87229b 100644 --- a/src/SettingsPage.php +++ b/src/SettingsPage.php @@ -174,6 +174,12 @@ public function save() { /** Get selected columns. */ $columns = get_option( 'uewm_columns' ); + + /** Add custom columns */ + $custom_columns = apply_filters('uewm_custom_columns', array()); + $columns = array_merge($columns, $custom_columns); + $allowlist = array_merge($allowlist, $custom_columns); + $columns = $columns ? $columns : $allowlist; /** Empty = All. */ /** Filter columns. */ diff --git a/src/Users.php b/src/Users.php index 57fc1cd..9f8f15f 100644 --- a/src/Users.php +++ b/src/Users.php @@ -98,6 +98,17 @@ public function get_users_data( $ids ) { foreach ( $meta_records as $record ) { $user_rows[ $record->user_id ][ $record->meta_key ] = $record->meta_value; } + + /** Add custom info */ + $custom_columns = apply_filters('uewm_custom_columns', array()); + if( ! empty( $custom_columns ) ) { + foreach ( $user_records as $record ) { + foreach ($custom_columns as $key => $column_name) { + $user_rows[ $record->ID ][ $column_name ] = apply_filters('uewm_custom_column_value_' . $column_name, '', $record->ID); + } + } + } + return $user_rows; }