Пример JavaScript-кода, который можно добавить в шаблон вашей темы (например, в footer.php
):
document.addEventListener('DOMContentLoaded', function () {
const scrollStorageKey = 'scrollPosition';
// Восстанавливаем скролл после перехода назад
if (localStorage.getItem(scrollStorageKey)) {
const savedScrollPosition = parseInt(localStorage.getItem(scrollStorageKey), 10);
console.log('Сохранённая позиция скролла:', savedScrollPosition);
// Добавляем задержку для учёта ленивая загрузка
setTimeout(() => {
window.scrollTo(0, savedScrollPosition);
console.log('Позиция скролла восстановлена на:', savedScrollPosition);
}, 1000); // Задержка 1 секунда, можно изменить по необходимости
}
// Сохраняем скролл перед уходом со страницы
window.addEventListener('beforeunload', function () {
const currentScrollPosition = window.scrollY;
localStorage.setItem(scrollStorageKey, currentScrollPosition);
console.log('Позиция скролла сохранена:', currentScrollPosition);
});
});