Я написал тестовый код, используя функцию пульса Wordpress, и хотя он отлично работает, как и ожидалось, на рабочем столе, по какой-то причине на моем iphone значение не обновляется?
Мое тестовое использование пульса Wordpress оченьпросто, он берет число с экрана, используя jQuery, отправляет его на значение «heartbeat-send», в котором функция добавляет 1 к этому номеру и затем возвращает его обратно.Как уже упоминалось, все отлично работает на рабочем столе, но не на мобильном (iPhone для меня).
jQuery на странице для обработки отправки и получения данных сердцебиения:
jQuery(document).ready(function(){
// ON HEARTBEAT
jQuery( document ).on( 'heartbeat-send', function ( event, data ) {
// Add additional data to Heartbeat data.
var matchID = jQuery('div.liveMins').html();
console.log(matchID);
data.match_id = matchID;
});
// ON HEARTBEAT RETURNED DATA
jQuery( document ).on( 'heartbeat-tick', function ( event, data ) {
// Check for our data, and use it.
console.log('ping received');
if ( ! data.minutes_in_game ) {
return;
}
jQuery('.liveMins').html(data.minutes_in_game);
});
});
И тогда этомоя функция php для обработки отправленных данных:
function myplugin_receive_heartbeat( $response, $data ) {
// If we didn't receive our data, don't send any back.
if ( empty( $data['match_id'] ) ) {
return $response;
}
$received_data = $data['match_id'];
$response['minutes_in_game'] = intval($received_data) + 1;
return $response;
}
add_filter( 'heartbeat_received', 'myplugin_receive_heartbeat', 10, 2 );
Так что приведенный выше код отлично работает на рабочем столе, и я даже добавил журналы консоли, чтобы показать, что правильные данные принимаются и отправляются и т. д., проблема с мобильным устройством не работает?Начальное значение загружается на страницу, а затем ничего не меняется даже после ожидания в течение многих минут, несмотря на то, что для тактового импульса установлено значение 16 секунд.