AlexBrWEs
@AlexBrWEs
Sport Press

Есть доступ к API спортивной статистики, что с этим делать?

Суть:
Для одного проекта на wp выдали доступ к API(ссылка и приват кей), НО никогда ранее не приходилось работать с API, начал изучать WP REST API https://developer.wordpress.org/rest-api/ (хотя все вполне доходчиво объясняется), в итоге запутался еще больше, как я понял(возможно я ошибаюсь) - это об организации доступа своего API, но как тянуть данные(очень мног статистики) с другого сайта. С структурой вп, хуками и всем(как оказалось ни всем), чем нужно в вп дружу давно. Проблема, как мне кажется в элементарном(уже вероятно хожу по кругу), но не догоняю как подстроить для своей задачи.

Буду признателен любым Примерам в первую очередь, прямо "НА ПАЛЬЦАХ"(откуда начать и куда дальше), если вдруг у вас будет пара-тройка скринов, то вообще замечательно, или советам по делу, но без троллинга и понтов, типа: "гугл в помощь", "кури маны" и т.п.

Дано: обычный шаред хостинг(доступ по ftp и через панель к бд) + сайт на вп(условно считаем дефолтным) + доступ к API => нужно выводить статистику спортивных событий на произвольной странице + соотв-но должна быть запись в бд = Гейм Овер! В идеале(так не бывает конечно, НО хоть пофантазировать), может кто-либо показать на примере 2-3 скринов, захватывающих файловую струтуру(с именем файлов) + строки. Понимаю, что отнятое на это время - для бльшинства из гуру просто напрасная потеря, к сожалению.

Пока из того, что видел в ветке по API, особо никак не проясняет вопрос, были примеры с выводом товаров магазина, но это вообще не подходит, хотя это работает относительно легко - без труда все повторил, но в данном случае не применимо к задаче.
  • Вопрос задан
  • 245 просмотров
Пригласить эксперта
Ответы на вопрос 2
HemulGM
@HemulGM
Delphi Developer, сис. админ
Есть endpoint - адрес к серверу, есть роуты (или методы)
Например, метод getCSGOStatistic, который позволяет указывать несколько параметров, count и offset. Т.е. сколько получить элементов и с какого элемента по порядку
Ты просто берешь и выполняешь GET запрос. Предположим, что твой сервер с апи будет тут https://yourendpint.ru/api/v1/
https://yourendpint.ru/api/v1/getCSGOStatistic?count=100&offset=0

В ответ ты получаешь json объект.
Какие методы, какие у них параметры и какие ответы смотри в документации к апи

Если ты это делаешь на сайт, то на сервере делай либо некоторый воркер, который периодически запрашивает статистику и пишет в бд, а твой сайт её оттуда забирает, либо делай что-то типа переменной последнего опроса сервера с апи и это будет делать первый, кто открыл твой сайт, если статистика давно не запрашивалась
Ответ написан
artzolin
@artzolin Куратор тега WordPress
php, WordPress разработка сайтов artzolin.ru
Api вашей футбольной статистики у меня нет, но я приведу три рабочих примера использования разных api БЕЗ использования WP REST API

YouTube Api

$args = [
	'part' => 'snippet', // какие параметры включить в ответ
	'q' => 'WordPress', // поисковый запрос
	'maxResults' => 50, // кол-во результатов в ответе
	'key' => 'xxx', // ключ
];

$api_url = add_query_arg( $args, 'https://www.googleapis.com/youtube/v3/search' ); 

$json_result = wp_remote_get( $api_url );

$body = json_decode( $json_result['body'] );
var_dump( $body );


Openweathermap Api

$args = [
	'lat' => '43.671387', // широта
	'lon' => '40.297416', // долгота
	'appid' => 'xxx', // // ключ
	'lang' => 'ru', // язык
];

$api_url = add_query_arg( $args, 'https://api.openweathermap.org/data/2.5/weather' );

$json_result = wp_remote_get( $api_url );

$body = json_decode( $json_result['body'] );
var_dump( $body );


Kinopoiskapiunofficial Api

$person_id = '967312'; // id персоны
$api_url = 'https://kinopoiskapiunofficial.tech/api/v1/staff/' . $person_id;

$args = array(
	'headers' => array(
		'X-API-KEY' => 'xxx', // ключ
		'Content-Type' => 'application/json',
	),
);

$json_result = wp_remote_get( $api_url, $args );

$body = json_decode( $json_result['body'] );
var_dump( $body );


В последнем случае ключ передается не в строке поиска, а в заголовках headers, судя по скриншотам это ваш случай
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы