Возьми гусак на документы для get_user_meta()
. Третий параметр хорош, потому что он заставляет его возвращать одно значение вместо массива (обычно 1 элемент). Примечание: если вам нужен только dokan_profile_settings
, вы можете получить это с помощью get_user_meta( $user_id->ID, 'dokan_profile_settings', true );
. (Еще одна интересная вещь: с get_users
вы можете сделать 'fields' => 'all_with_meta'
, чтобы вернуть также все мета-поля
. Смысл этого мета-поля в том, что данные сериализуются . Как только вы получить эту переменную, независимо от метода, вам нужно unserialize
, если она не будет автоматически сериализована. WordPress имеет удобную функцию с именем maybe_unserialize
, которая работает хорошо для таких полей в случае, если данные могут или не могли быть сериализованы.
Это приводит нас к чему-то вроде этого:
$users = get_users( array( 'fields' => array( 'ID' ) ) );
foreach( $users as $user ){
$dokan_profile_settings = get_user_meta( $user->ID, 'dokan_profile_settings', true );
$dokan_profile_settings = maybe_unserialize( $dokan_profile_settings );
echo $dokan_profile_settings['address'];
}