[quote name=‘Olesia’ timestamp=‘1437551833’ post=‘223869’]
Мне оптимально подойдет полностью заменить статус “Нет в наличии” на “Под заказ”, и добавить ему функцию положить товар в корзину. Соответственно далее работать с ним, как с обычным заказом.
Статуса “Нет в наличии” вообще не будет. У нас стройматериалы, все, что продаем на сайте либо лежит на нашем складе либо у производителя, надо только привезти.
[/quote]
- Открываем файл:
/design/themes/responsive/templates/common/product_data.tpl
- Находим строчки отвечающие за вывод “В наличии” при условии, что у нас разрешено отрицательное количество товара на складе (наша ситуация) , там просто много ситуаций. Я лично ищу по языковой переменной (in_stock).
В результате приходим к:
[CODE]
{__("availability")}:
{__("in_stock")}
[/CODE]
3. Нам нужно заменить текст "В наличии" на наши два варианта, "В наличии" и "Под заказ". Меняем:
Было:
[CODE]{__("in_stock")}[/CODE]
Стало:
[CODE]
{if $product_amount > 0 }
{__("in_stock")}
{else}
Под заказ
{/if}
[/CODE]
4. Очищаем кэш. Супер получилось.
[b]Можно тоже самое сделать модулем, так как видим хуки [/b]{hook name="products:product_amount"}[b] рядом.[/b]
Для этого:
1. Создаём файл для нашего модуля файл, который будет подключаться к хуку и перезаписывать шаблон:
/design/themes/responsive/templates/addons/my_design/hooks/products/product_amount.override.tpl
2. Пилим код. Копируем весь код внутри хука в наш файл, и изменяем только нужный нам участок кода, не забываем оставлять комментарии, чтобы не забыть.
У меня такой код получился в файле модуля:
[spoiler]
[CODE]
{if $show_product_amount && $product.is_edp != "Y" && $settings.General.inventory_tracking == "Y"}
{if !$product.hide_stock_info}
{if $settings.Appearance.in_stock_field == "Y"}
{if $product.tracking != "ProductTracking::DO_NOT_TRACK"|enum}
{if ($product_amount > 0 && $product_amount >= $product.min_qty) && $settings.General.inventory_tracking == "Y" || $details_page}
{if ($product_amount > 0 && $product_amount >= $product.min_qty) && $settings.General.inventory_tracking == "Y"}
{__("availability")}:
{$product_amount} {__("items")}
{elseif $settings.General.inventory_tracking == "Y" && $settings.General.allow_negative_amount != "Y"}
{__("in_stock")}:
{$out_of_stock_text}
{/if}
{/if}
{/if}
{else}
{if ((($product_amount > 0 && $product_amount >= $product.min_qty) || $product.tracking == "ProductTracking::DO_NOT_TRACK"|enum) && $settings.General.inventory_tracking == "Y" && $settings.General.allow_negative_amount != "Y") || ($settings.General.inventory_tracking == "Y" && $settings.General.allow_negative_amount == "Y")}
{__("availability")}:
{if $product_amount > 0 }
{__("in_stock")}
{else}
Под заказ
{/if}
{elseif $details_page && ($product_amount <= 0 || $product_amount < $product.min_qty) && $settings.General.inventory_tracking == "Y" && $settings.General.allow_negative_amount != "Y"}
{__("availability")}:
{$out_of_stock_text}
{/if}
{/if}
{/if}
{/if}
[/CODE]
[/spoiler]