Добрый вечер! Возник следующий вопрос:
Каким образом следует пользоваться сборщиком , если нужно сайт поставить на CMS ( к примеру Битрикс)?
Верстается сначала статичный сайт, а после натягивается на CMS?
P.S. до этого верстал только статичные сайты и этот вопрос не возникал.
В битриксе иногда проще верстать в уже готовых компонентах. Некоторые имеют довольно сложную логику, поэтому может оказаться довольно сложным вариант натягивать уже готовое)
Никита: 100% решение этой проблемы Ctrl+A далее Del. Нельзя использовать стандартные шаблоны, это ломает психику и может привести к печальным последствия. А если взять $arResult и написать самому, то ничего сложного нет. Это намного проще будет
Сергей: У вас есть пример универсального решения для вывода вариантов торговых предложений в карточке товара? Потому что на мой взгляд это довольно нетривиальная задача. Можно без проблем написать лёгкий и красивый переключатель свойств, когда известен список этих свойств. А так чтобы пользователь мог добавлять свои, да ещё чтобы любое предложение могло отсутствовать и нигде не ломалась логика, я сделать пробовал своё, плюнул и разобрался в Битриксовом js. Было тяжко, зато теперь вёрстка подобных элементов занимает у меня минимум времени.
Александр Филиппенко: Обычный select из массива SKU, по кнопке добавить в корзину отправляет количество и id товара в скрипт добавления в корзину. в этом скрипте add2basket.
Я тоже разбирался в битриксовом js и пришел к выводу что это просто бред, а не код
Сергей: На стороне РНР всё понятно и просто. На стороне JS как быть? Если у нас например одежда 4 разных размеров и 3 цветов, и не все сочетания этих свойств есть в наличии, но в каждый момент времени нужно показывать только доступные. И вдруг пользователь решил что ему ещё нужно свойство "цвет пуговиц" добавить. Для такого случая есть красивое решение?
Александр Филиппенко: Не очень понял что имено вы хотите делать на js? У меня все на пхп обрабатывается, нет товара пишет что нет в наличии и не блочим(или скрываем или заменяем на подписаться) кнопку "купить" на нем. На js только идет аякс запрос с id предложением в корзину.
Сергей: Мы видимо о разных способах вывода говорим.
Я о том который в стандартном шаблоне идёт (типа магазин одежды).
И чаще всего на клиентских сайтах нужно что-то подобное, с одной кнопкой купить, но разными вариантами одного товара.
Александр Филиппенко: Возможно. Мой пример такой. Есть тег select в нем опции каждая опция это отдельный sku где value это id этого sku. По кнопке купить я отсылаю выбранный id в корзину на аяксе. Можно конечно не селект, а чтонить покрасивее типа дивов, но смысл не меняется.
Александр Филиппенко: Свойство не есть sku. sku это и есть набор свойств. Разложить на цвета-размеры-фасон не сложно, пару js строк добавиться для переключателей.
всеравно не вижу смысла тянуть громадный скрипт, который написан неандертальцами, где забудешь какой-то див поставить и сидишь отлаживаешь этот "код"
Сергей: Всё же парой строк дело не обойдётся. Особенно если к 2 созданным программистом свойствам, админ сайта добавит 3 своих. Какие-то могут быть заполнены, какие-то нет. Какие-то варианты были, но закончились.
Битриксовый код несомненно ужасен, но когда начинаешь думать как это переписать не потеряв ничего (!) из функционала, наступает ступор. Банально ограничив количество свойств для выбора SKU и сделав обязательным из запонение, действительно можно выкинуть 3/4 кода в result_modifier.php и в js буквально в 20 строк уложиться (это с ajax-овым добавлением в корзину и модалкой как в стандартном шаблоне), а вот если нужно сохранить полную универсальность, проще разобраться в том, что битриксойды наворотили. Тем более что это сложно только в первый раз. Потом не больше пары часов занимает подключение этого скрипта к любому дизайну.
Я раньше верстал сразу в компонентах, но пришёл к выводу что это слишком медленно. Лучше верстать отдельно статические страницы, и потом эту вёрстку натягивать. Но в местах где много яваскрипта лучше при выборе элементов ориентироваться на стандартные шаблоны. Меньше проблем в будущем.