Я создаю приложение с программным обеспечением Apppresser -> https://apppresser.com/, которое позволяет создавать мобильное приложение с сайта WordPress.
Мы поняли, что изнутри WordPress это не так можно узнать, вошел ли пользователь в приложение и, следовательно, найти информацию о нем.
Фактически упомянутый здесь метод не работает: Получить текущий идентификатор пользователя внутри возврата короткого кода 0
Из документации https://apppresser.com/custom-wp-api-authentication/ Я понимаю, что вам нужно использовать REST-API, можете ли вы помочь мне понять, и знает ли кто-нибудь из вас способ перехвата пользовательских данных?
Вам необходимо знать идентификатор пользователя и роль.
Моя попытка заключается в следующем:
function checkApiAuth( $result ){
// if user and token from app match user meta in wp, continue
$user = get_current_user_id();
$app_token = get_query_var('app_token');
$wp_token = get_user_meta($user, 'app_token', true);
if( is_user_logged_in() && $wp_token === $app_token ) {
$result = true;
} else {
$result = false;
}
return $result;
}
add_filter('rest_authentication_errors', 'checkApiAuth');
function appp_hide_content_shortcode( $atts, $content = '' ) {
if( class_exists('AppPresser') && AppPresser::is_app() ){
// This is only returning an integer here.
return checkApiAuth($result);
} else {
return $content;
}
}
add_shortcode('appp_hide_content', 'appp_hide_content_shortcode');
Спасибо за помощь