Делаю кнопку обновления контента страницы wordpress c помощью ajax.
Вот так сейчас работает:
1) Первоначально контент страницы равен "А"
2) Открываем страницу, там контент "А"
3) Контент изменился на "Б" в админке
4) Нажать кнопку "Обновить" на уже открытой странице - контент поменялся на "Б"
5) Контент изменился на "В" в админке
6) Нажать кнопку "Обновить" на уже открытой странице - контент остался "Б" (это проблема, должен стать В)
Это код на странице с кнопкой, я не знаю почти js, но думаю, что проблема в нем, "do_something" выполняется один раз и при нажатии на обновить, показывается "какой-то кеш" от первого выполнения.
<div class="ajax">А</div>
<button type="button" class="btn btn-link reload">Обновить</button>
<script>
function getajax(){
$.ajax({
type: "GET",
url: window.wp_data.ajax_url,
data: {
action: 'do_something',
postid: <?php echo $post_id; ?>
},
success: function (response) {
$('.ajax').html(response);
}
});
}
$(function() {
$('.reload').on('click', getajax);
})
</script>
Примерный код самого "do_something"
add_action( 'wp_ajax_do_something', 'do_something_callback' );
add_action( 'wp_ajax_nopriv_do_something', 'do_something_callback' );
function do_something_callback(){
$my_postid = $_GET['postid'];
$post = get_post($my_postid);
$content = $post->post_content;
echo $content;
}