Webasyst, скрыть товары если цена 0

2 июля 2019

Иногда нужно скрыть товары, если цена 0. Или наоборот, показать товар, а скрыть только цену. В Shop Script Webasyst сделать это можно так 

Это все делается с помощью 

{if ($p.price)<=0}style="display:none;"{/if}

Покажу на примере темы Дефолт.

Для того, чтобы скрыть товары с ценой 0 в списке товаров нужно добавить это в файле list-thumbs.html (примерно 41 строка)

<li itemscope itemtype ="http://schema.org/Product" {if ($p.price)<=0}style="display:none;"{/if}>

И в файле list-thumbs-mini.html (примерно 10 строка)

<li itemscope itemtype ="http://schema.org/Product" {if ($p.price)<=0}style="display:none;"{/if}>


А для того, чтобы скрыть цену 0 и разумеется кнопку корзины, а сами товары оставить видимыми

нужно добавить в файле list-thumbs.html (примерно 80 строка)

<div itemprop="offers" class="offers" itemscope="" itemtype="http://schema.org/Offer" {if ($p.price)<="0}style="display:none;"{/if}>

В результате получится типа такого

Еще добавить в файле list-thumbs-mini.html (примерно 24 строка)

<div itemprop="offers" itemscope="" itemtype="http://schema.org/Offer" {if= ($p.price)<=0}style="display:none;"{/if}>

В файле compare.html (примерно 96 строка)

<span class="price nowrap" {if ($p.price)<=0}style="display:none;"{/if}>{shop_currency_html($p.price)}</span>

В файле product.cart.html добавить {if ($product.price)<=0}style="display:none;"{/if} (примерно 184 строка), чтобы получилось так

<div class="add2cart" {if ($product.price)<=0}style="display:none;"{/if}>

В результате получится так

Цена больше 0

Цена 0