Тема: Проблема з переходом назад ( go back )
Я виводжу пости відповідно до настройок дати користувача.
Спочатку показую всі пости
<div id="my_area">
<?php
$obj = new showPosts();
$obj->writePost();
?>
</div>
showPosts - це клас який виводить пости і сортує податі.
На цьому етапі проблем немає. Я можу відкрити пост, а потім натиснути go back (в браузері).
Коли користувач вибирає конкретну дату відбувається AJAX запит, у відповідь приходять відсортовані пости по даті.
<button type="button" onclick="showPosts()">Change the date</button>
Запит відправляється у файл де є клас showPosts (тобто той самий що клас про який я писав вище)
admin-ajax.php - так потрібно для WP, він потім перенаправляє
function showPosts()
{
var xhttp = new XMLHttpRequest;
var afterDate = document.getElementById('afterDate').value;
var beforeDate = document.getElementById('beforeDate').value;
afterDate = afterDate.replace(/\//g, '-');
beforeDate = beforeDate.replace(/\//g, '-');
xhttp.onreadystatechange = function()
{
if(this.readyState == 4 && this.status == 200)
{
document.getElementById('my_area').innerHTML = this.responseText;
}
};
xhttp.open('POST', '<?=admin_url( 'admin-ajax.php' )?>', true);
xhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhttp.send('action=showPosts&afterDate=' + afterDate + '&beforeDate=' + beforeDate);
}
Тут відбувається така проблема, коли відкрити пост і натиснути go back збиваються всі настройки дати, замість відсортованих показуються всі пости, браузер переносить сторінку на початок.
Я думав тут використати сесії, але як зрозуміти користувач зайшов повторно на цю сторінку чи користувач натиснув go back ?
В $_SERVER['HTTP_REFERER'] є інформація з якої сторінки був здійснений перехід, але це буде складно.
Як не виконувати скрипт які виводять пости коли була натиснута кнопка go back ?