Je sais comment ajouter des colonnes à la page utilisateurs.php avec manage_users_columns
et manage_users_custom_column
, mais je ne sais pas modifier les informations affichées dans les colonnes par défaut (nom d'utilisateur, nom, email, etc.).
Comment puis-je ajouter du texte comme indiqué par le texte rouge "du texte ici" dans l'image ci-dessous?
WP_Users_List_Table
Je pense que nous devrons supprimer la colonne actuelle Name et ajouter notre propre colonne à la place.
Voici les étapes:
Tout d'abord, nous ajoutons notre propre colonne Nom , puis supprimons la colonne par défaut Nom . Ici, j'utilise le truc de découpage de tableau, mentionné ici , pour le faire en un seul balayage:
add_filter( 'manage_users_columns', function( $columns )
{
return array_slice( $columns, 0, 2, true )
+ [ 'mycol' => __( 'Name' ) ]
+ array_slice( $columns, 3, null, true );
} );
Ensuite, nous devons afficher d’abord - et nom de famille de l’utilisateur correspondant, avec le caractère supplémentaire ". Du texte ici "message:
add_filter( 'manage_users_custom_column', function( $output, $column_name, $user_id )
{
if( 'mycol' === $column_name )
{
$u = new WP_User( $user_id );
if( $u instanceof \WP_User )
{
// Default output
$output .= "$u->first_name $u->last_name";
// Extra output
$output .= "<p>Some text here!</p>";
// Housecleaning
unset( $u );
}
}
return $output;
}, 10, 3 );
Ensuite, il suffit d’ajuster les colonnes triables avec:
add_filter( 'manage_users_sortable_columns', function( $columns )
{
$columns['mycol'] = 'name';
return $columns;
} );
pour gérer le tri name
, il est déjà pris en charge par la requête publique orderby
varaiable:
/wp-admin/users.php?orderby=name&order=asc
et
/wp-admin/users.php?orderby=name&order=desc
J'espère que vous pourrez adapter cela à vos besoins.