WordPress obtenir utilisateur par meta data
Comment puis-je récupérer tous les utilisateurs enregistrés dans mon blog WordPress ayant une méta-données particulière?
Par exemple j'ai fait une option d'ajouter des méta-données pour chaque enregistrement d'utilisateurs ayant des méta -parent_id
. Si je veux lister tous les utilisateurs ayant parent_id
2
, alors comment puis-je faire cela?
4 réponses
depuis WP v3.1 Il est ridiculement facile de rechercher un utilisateur par sa méta-clé.
utilisez la fonction
get_users ($args)
la fonction prend un tableau de paramètres, dans votre cas vous avez besoin
get_users (array ('meta_key' => "parent_id", "meta_value' => '42'))
Simple, comment obtenir un utilisateur par son métadonnées est:
$user = reset(
get_users(
array(
'meta_key' => $meta_key,
'meta_value' => $meta_value,
'number' => 1,
'count_total' => false
)
)
);
Voici comment vous pouvez obtenir des utilisateurs basés sur un rôle personnalisé et de multiples clés de métadonnées,
$available_drivers = get_users(
array(
'role' => 'driver',
'meta_query' => array(
array(
'key' => 'approved',
'value' => true,
'compare' => '=='
),
array(
'key' => 'available',
'value' => true,
'compare' => '=='
)
)
)
);
en expliquant la requête ci-dessus, je ne veux que les utilisateurs à qui j'ai assigné le rôle de pilote, et ils sont approuvés et disponibles. Les champs approuvés et disponibles sont des champs personnalisés créés en utilisant ACF comme champs True / False.
si vous avez des métadonnées supplémentaires à tester, ajoutez un autre élément au tableau meta_query.
En attendant, vérifiez mon open source à github.com/patrickingle
détaillant la façon d'utiliser le get_users($arg);
fonction.
il contient des exemples comment construire des fonctions personnalisées pour récupérer diverses parties de données utilisateur. Vous aurez à construire naturellement et faire certains de vos propres changements pour l'obtenir comme vous voulez.
en plus voici un lien à une fonction que quelqu'un a construit qui va récupérer des données utilisateur basé sur les rôles au sein de wordpress. Vous pouvez le configurer de différentes façons avec quelques tweeking, mais cela vous permettra de filtrer vos résultats dans un plus puissant.