Не отображается цена, если товара нет в наличии
Answered
1
Независимо от того, сколько артикулов у позиции, если товара нет в наличии, то в каталоге товаров цена не отображается, хотя и видна в самой карточке товара.
Отключил, почистил кэш и в инсталлере, и в браузере - цены появились.
Но теперь, при загрузке страницы каталога, на какое-то время в карточке товара, который есть в наличии, появляются дополнительная надпись "В наличии" и надпись "Нет в наличии".
В карточке того товара, которого в наличии нет, появляется дополнительная надпись "Нет в наличии".
Извините, забыл о том, что если в настройках темы убрать вывод информации о наличии в каталоге, то часть проблемы решится. На текущий момент, в процессе загрузки страницы каталога, товаров выводится "Нет в наличии" под надписью "В наличии" у тех товаров, которые есть в наличии. Под теми, которых в наличии нет, дополнительная надпись не появляется.
3 answers
Это является стандартным поведением плагина и всех дефолтных тем дизайна.
Чтобы цена показывалась, необходимо в теме дизайна в файл плагина "plugin.salesku.js" добавить код:
saleskuPluginProduct.prototype.cartButtonVisibility = function (visible) { if (visible) { this.cartButtonActive(true); this.getElements().Quantity().show(); this.getElements().added2cart().hide(); } else { this.cartButtonActive(false); this.getElements().Quantity().hide(); this.getElements().added2cart().hide(); } };Добавил в самое начало, сохранил, очистил кэш - цены так и нет.
Да, старый код остался с первых версий.... надо еще добавить в тот файл:
saleskuPluginProduct.prototype.setSku = function (sku_data) { var sku = false; var self = this; if(typeof sku_data=='object' && sku_data.hasOwnProperty('id')) { var sku = sku_data; } else if(typeof sku_data == 'string'){ if(this.features.hasOwnProperty(sku_data)) { sku = this.features[sku_data]; } } if (sku) { self.setSkuImage(sku); self.updateSkuServices(sku.id); if (sku.available) { this.cartButtonVisibility(true); self.updatePrice(sku.price, sku.compare_price); } else { self.form.find("div.stocks div").hide(); self.form.find(".sku-no-stock").show(); self.cartButtonVisibility(false); } } else { self.getElements().Form().find("div.stocks div").hide(); self.getElements().Form().find(".sku-no-stock").show(); self.cartButtonVisibility(false); } };Вижу, что вы код в моём шаблоне поправили, но цена так и не появилась.
Вижу! Включено приложение Ускорение сайта и кеш не очищен!)))
:-)))) Ух уж это приложение!
Отключил, почистил кэш и в инсталлере, и в браузере - цены появились.
Но теперь, при загрузке страницы каталога, на какое-то время в карточке товара, который есть в наличии, появляются дополнительная надпись "В наличии" и надпись "Нет в наличии".
В карточке того товара, которого в наличии нет, появляется дополнительная надпись "Нет в наличии".
https://fleximarket.com.ua/category/smartfony/assi...
После полной загрузки страницы надписи пропадают. :-)
Извините, забыл о том, что если в настройках темы убрать вывод информации о наличии в каталоге, то часть проблемы решится. На текущий момент, в процессе загрузки страницы каталога, товаров выводится "Нет в наличии" под надписью "В наличии" у тех товаров, которые есть в наличии. Под теми, которых в наличии нет, дополнительная надпись не появляется.
Вижу, что исправили. Спасибо большое! :-)