WordPress – популярная система управления контентом (CMS), предоставляющая широкие возможности управления пользователями. Одной из мощных функций WordPress является возможность связывать пользовательские метаданные с пользователями. В этой статье мы рассмотрим различные методы получения пользователей на основе метаданных на примерах кода.
Метод 1: использование класса WP_User_Query
$meta_query_args = array(
'meta_key' => 'custom_meta_key',
'meta_value' => 'meta_value_to_search',
'meta_compare' => '=', // Use other comparison operators as needed
);
$user_query = new WP_User_Query( $meta_query_args );
// Get the users
$users = $user_query->get_results();
// Loop through the users
foreach ( $users as $user ) {
// Access user properties
$user_id = $user->ID;
$user_data = get_userdata( $user_id );
// Do something with the user data
}
Метод 2: использование функции get_users()
$meta_key = 'custom_meta_key';
$meta_value = 'meta_value_to_search';
$meta_compare = '='; // Use other comparison operators as needed
$args = array(
'meta_key' => $meta_key,
'meta_value' => $meta_value,
'meta_compare' => $meta_compare,
);
$users = get_users( $args );
// Loop through the users
foreach ( $users as $user ) {
// Access user properties
$user_id = $user->ID;
$user_data = get_userdata( $user_id );
// Do something with the user data
}
Метод 3: использование класса WPDB
global $wpdb;
$meta_key = 'custom_meta_key';
$meta_value = 'meta_value_to_search';
$usermeta_table = $wpdb->prefix . 'usermeta';
$query = $wpdb->prepare(
"SELECT user_id FROM $usermeta_table WHERE meta_key = %s AND meta_value = %s",
$meta_key,
$meta_value
);
$results = $wpdb->get_results( $query );
// Loop through the results
foreach ( $results as $result ) {
$user_id = $result->user_id;
$user_data = get_userdata( $user_id );
// Do something with the user data
}
Получение пользователей по метаданным в WordPress можно выполнить различными методами. В этой статье мы рассмотрели три метода: использование класса WP_User_Query, функции get_users() и класса WPDB. Эти методы обеспечивают гибкость при запросе и извлечении пользователей на основе пользовательских метаданных. Используя эти методы, вы можете расширить возможности управления пользователями на своем веб-сайте WordPress.