JoomShopping – решаем проблему с повторной отправкой формы при возврате на предыдущую страницу
Те, кто имел дело с бесплатным компонентом JoomShopping для CMS Joomla!, при активном его использовании могли наблюдать некоторые неполадки в работе. При поиске товаров и их просмотре, а после возврате на предыдущую страницу, пользователь мог видеть подобную картину:
Происходит это, потому что компонент использует в своей работе технологию Ajax для передачи запросов. Все пользователи вашего сайта, кто обновил страницу или нажал кнопку «Назад» в браузере – получали ошибку, что способствует повышению процента отказа и потери клиентов.
Нам это совсем не нужно, и сейчас я расскажу вам, как избавиться от данной ошибки.
1. Первое, что вам необходимо сделать – подключиться к вашему сайту по FTP.
2. В папке /templates/название вашей темы/list_products/ откройте файл form_filter.php и в самый конец вставьте:
<?php
if(isset($_POST["orderby"])) {
header("Location: http://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]);
}
?>
Сохраните и отправьте файл обратно на сайт.
3. Затем в папке /modules/mod_joomshopping_filter/ откройте файл default.php и перед закрывающим тегом </form> вставьте:
<input type="hidden" name="on" value="1" />
В завершении, в самый конец файла вставьте:
<?php
if(isset($_POST["on"])) {
header("Location: http://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]);
}
?>
Также сохраните изменения и отправьте файл обратно на сайт.
Такими несложными действиями мы устранили с вами ошибку и повысили комфорт использования вашего сайта.