Есть ли способ получить метаданные пользователя wordpress с помощью внешнего скрипта

#php #wordpress

Вопрос:

Я хочу создать скрипт, который, когда он получает запрос на публикацию с именем пользователя и паролем, проверяет правильность имени пользователя и пароля, затем находит количество монет, которые есть у пользователя (я использую плагин под названием MoolaMojo), и отправляет его обратно в строке JSON. PHP-скрипт находится в том же домене, но не связан с WP.

Вот мой PHP-код:

 <?php

// Load Request
$api_method = isset($_POST['api_method']) ? $_POST['api_method'] : '';
$api_data = isset($_POST['api_data']) ? $_POST['api_data'] : '';

// Validate Request
if (empty($api_method) || empty($api_data)) {
    API_Response(true, 'Invalid Request');
}
if (!function_exists($api_method)) {
    API_Response(true, 'API Method Not Implemented');
}

// Call API Method
call_user_func($api_method, $api_data);

/* Helper Function */

function API_Response($isError, $errorMessage, $responseData = '')
{
    exit(json_encode(array(
        'IsError' => $isError,
        'ErrorMessage' => $errorMessage,
        'ResponseData' => $responseData
    )));
}

/* API Methods */

function loginUser($api_data)
{
    // Decode Login Data
    $login_data = json_decode($api_data);

    // Dummy Check
    if ($login_data->username == 'test' amp;amp;
        $login_data->password == '1234')
    {
        // Success
        API_Response(false, '', 'SUCCESS');
    }
    else
    {
        // Error
        API_Response(true, 'Invalid username and/or password.');
    }
}

?>
 

Комментарии:

1. да, есть, все данные хранятся только в базе данных. вы можете сначала сопоставить имя пользователя и пароль(md5), если это правильно, затем получить идентификатор пользователя и получить все метаданные. запустите цикл foreach, найдите соответствующие метаданные и верните их

2. @ShashankShekhar Хорошо, как бы я это сделал?

3. Как бы то ни было, WordPress обеспечивает основу для разработки API REST . Вы можете интегрировать функциональность непосредственно в WordPress с помощью плагина или фрагмента кода. К сожалению, объяснение того, как все это сделать, выходит далеко за рамки ответа на переполнение стека. Может быть, кто-то на wordpress.stackexchange.com знает плагин или другой готовый способ делать то, что вы хотите.