好啊已解决。
PHP
function counter_script() {
wp_enqueue_script(\'counter\', get_template_directory_uri() . \'/js/counter.js\');
wp_localize_script( \'counter\', \'numbers\', array(
\'ajaxurl\' => admin_url( \'admin-ajax.php\' )
));
}
add_action( \'wp_enqueue_scripts\', \'counter_script\' );
add_action( \'wp_ajax_nopriv_numberstotal\', \'numberstotal\' );
add_action( \'wp_ajax_numberstotal\', \'numberstotal\' );
function numberstotal() {
global $post;
$postargs = array(
\'post_type\' => \'cpt\',
\'posts_per_page\' => -1
);
$cpt_query = new WP_Query($postargs);
if ($cpt_query->have_posts()) : while ($cpt_query->have_posts()) :
$cpt_query->the_post();
$numbersArray += get_field(\'numbers\');
endwhile;
endif;
wp_reset_query();
echo json_encode($minutesArray);
wp_die();
}
脚本
function updateNumbers(){
$.ajax({
url: numbers.ajaxurl,
data: {
action: \'numberstotal\'
},
success: function (response) {
$(\'.counter\').html(response)
}
});
setTimeout(updateNumbers, 5000);
}
updateNumbers();