Я использую плагин wp-get API для вызова открытого rest-API, данные, возвращаемые этим API, постоянно меняются, я также хочу показать эти данные в реальном времени без вызова API или перезагрузки страницы.
<div class = "box" id = "heart">
<div class = "glass"></div>
<div class = "content">
<h1><?php
$data = wpgetapi_endpoint( 'yahoo', 'yahoo', array('debug' => false) );
$result = intval($data["tabsOpened"]/15);
echo $result;
?>
</h1>
<p>Food Plates Donated</p>
<h1><?php
$data = wpgetapi_endpoint( 'yahoo', 'yahoo', array('debug' => false) );
$result = intval($data["tabsOpened"]);
echo $result;
?>
</h1>
<p>Tabs Opened</p>
</div>
</div>
я показываю данные в сердце, я хочу обновить значения, как счетчик. как я могу добиться этого.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Для автоматического вызова REST API в WordPress вы можете использовать функцию wp_remote_get. Эта функция позволяет отправить HTTP-запрос GET на удаленную конечную точку API и получить ответ.
Вот пример фрагмента кода, который демонстрирует, как использовать wp_remote_get для вызова REST API:
$url = 'https://example.com/api/endpoint';
$response = wp_remote_get( $url );
if ( is_wp_error( $response ) ) {
// handle Error
} else {
$body = wp_remote_retrieve_body( $response );
// do something with the API response
}
Здесь вы можете найти объяснение того, как вы вызываете API каждые x секунд/минут с помощью jquery.
setInterval(function()
{
$.ajax({
type:"post",
url:"yourapicall",
success:function(data)
{
//do something with response data
}
});
}, 10000);//time in milliseconds
https://stackoverflow.com/a/5687625/2663707
Поскольку данные API меняются, вам обязательно нужно настроить какую-нибудь веб-книгу. В противном случае вам придется вызывать API снова и снова, что определенно не является хорошей практикой. Решение — вебхук.
Также для обновления данных без перезагрузки страницы вам также необходимо настроить AJAX.
С AJAX и Webhook вы добьетесь желаемых результатов.
как настроить вебхук.
какой апи ты используешь?? Можете ли вы сказать имя?
я использую этот API tab.pledgeasmile.com/backend/api/tabsInfo/global
@PrinceBhati Я не знаю, что это за API. Обычно API предоставляет настройку веб-перехватчика. Итак, вам просто нужно указать URL-адрес приложения, и API активирует его. Итак, дело в API. Вы можете создать только конечную точку в wordpress, которая будет получать данные. Итак, вы должны посмотреть документацию по API. Но если у них нет такой настройки, просто используйте ajax и setInterval в своем javascript, чтобы получить данные и обновить свою страницу.
да, но постоянно вызывать API таким образом — не очень хорошая практика. Хорошим решением является использование Webhook. Таким образом, когда данные изменяются, он автоматически срабатывает и отправляет запрос в приложение.