Убрать из корзины скрытые товары
В некоторых интернет-магазинах на платформе Webasyst клиенты создают заказы по несколько дней. Часть товаров, которые они кладут в корзину заканчиваются и их скрывают владельцы магазина. А вот из корзины скрытые товары не убираются у клиента. В итоге клиент может оформить заказ с товаром, который уже не актуален или нет в продаже.
Вот простое решение - скрипт, который будет проверять статус товара и удалять его при очередном посещении страницы корзины.
JS
Добавьте в файл cart.js
вашей темы дизайна данный фрагмент скрипта
$(function () { //...тут старый код $('.delete_product').each(function(){ $(this).click(); }); });
HTML
Добавьте в файле cart.html
после {foreach $cart.items as $item}
в <div>
(вместо div у вас может быть tr) {if $item.product.status == 0}style="display: none;"{/if}
.
Мы скрываем товар, который имеет статус "скрытый"
{foreach $cart.items as $item} <div data-id="{$item.id}" {if $item.product.status == 0}style="display: none;"{/if}> ... </div> {/foreach}
Тут же в foreach к кнопке удаления товара добавьте class с условием {if $item.product.status == 0} delete_product{/if}
<a href="#" class="delete{if $item.product.status == 0} delete_product{/if}" title="[`Remove from cart`]">Удалить</a>