[ Закрыто ] Кто разобрался с новым шаблоном интернет магазина на 1С Битрикс 14.x ?, Кто разобрался с новым шаблоном интернет магазина на 1С Битрикс 14.x ? Пытаюсь натянуть туда свою вёрстку, что-то не очень получается.
Добрый вечер! Кто разобрался с новым шаблоном интернет магазина на 1С Битрикс 14.x ? Пытаюсь натянуть туда свою вёрстку, что-то не очень получается. Например где искать скрипты которые отвечают за отображение свойств товара при наведении курсора мышки, вот этих: http://myscreenshot.info/i/0003/253311394643822695807422120450.png. Затем нигде не найду описания класса JS объект которого JCCatalogSection создаётся по ходу кода. Я так понял что вот этот скрипт script.js лежащий в папке компонента catalog.section комплексного компонента catalog http://myscreenshot.info/i/0003/393041394644117494589890069298.png отвечает за работу ряда мелких функций типа увеличения, уменьшения количества покупаемого подарка, клик по кнопке купить и.п., но в этом файле опять таки идёт работа с объектом JCCatalogSection, как с ним работать, что за методы - не всегда очевидно.
Да на сколько я понял в script.js определяется некая сущность JCCatalogSection с кучей атрибутов, затем через JCCatalogSection.prototype добавляются методы работы с этой сущностью: JCCatalogSection.prototype.Init, JCCatalogSection.prototype.QuantityUp, JCCatalogSection.prototype.QuantityDown, JCCatalogSection.prototype.QuantityChange, JCCatalogSection.prototype.QuantitySet, JCCatalogSection.prototype.SelectOfferProp, JCCatalogSection.prototype.SearchOfferPropIndex, JCCatalogSection.prototype.RowLeft, JCCatalogSection.prototype.RowRight, JCCatalogSection.prototype.UpdateRow и JCCatalogSection.prototype.GetRowValues . Теперь не понятен следующий момент - как вызывается например метод JCCatalogSection.prototype.QuantityUp по идеи он срабатывает на нажатие по кнопке + на форме редактирования количества добавляемого в корзину товара http://myscreenshot.info/i/0003/762501394691327614027162416127.png а вот сформированный html код этой кнопки +
где id - естественно хитрый идентификатор товара (возможно при его считывании скрипт и понимает что нужно вызвать QuantityUp т.к. в id присутствует такая штука _quant_up ) но явного вызова именно этого метода я нигде не нашёл, ровно как и скрипта который бы парсил id и понимал что нужно вызвать я тоже не нашёл. Кто-нибудь знает как тут вообще организован вызов всех этих методов?
Все шаблоны которые вы видите в моих примерах содержаться в самих компонентах и в них же содержится вся верстка, вы можете кастомизировать компонент стандартными средствами скопировав его и кастомизировав наш дефолтный шаблон.
В компонентах содержаться все нужные CSS файлы и подключаются стандартные нужные библиотеки, что можно будет разобрать и начать править.
Присоединяюсь к Александру. Юрий, вопрос в том кто и как разабрался.
Цитата
Юрий Волошин пишет: В компонентах содержаться все нужные CSS файлы и подключаются стандартные нужные библиотеки, что можно будет разобрать и начать править.
это понятное дело_))) Вопрос в глубинном изменении)
Разработка, поддержка сайтов. Консультация по работе. От 950 руб/час. Sunweb.pro
а я таки всё же разобрался и глубинно его изменил )), немного позже допишу тему, в двух словах там работа едёт через js объект и нужно в вёрстке предусмотреть теги в которые можно засунуть определённые ID . По этим ID метод объекта Init() правильно создас объект класса JCCatalogSection (в категориях товара) и JCCatalogElement в карточке товара. Познакомиться с классом и методами можно в комплексном компоненте каталога тут: http://joxi.ru/lMZPU_3JTJDWaHLLryY
Александр Андреев пишет: а я таки всё же разобрался и глубинно его изменил )), немного позже допишу тему, в двух словах там работа едёт через js объект и нужно в вёрстке предусмотреть теги в которые можно засунуть определённые ID .
Допишите, интересно.
Разработка и поддержка интернет магазинов на Битрикс www.fl.ru/users/electroid/, интеграция битрикс и 1С.
+ На данный момент делаю магазин на Бизнесе со всеми обновлениями, в catalog.element кнопка Купить работает как обычная ссылка, не появляется всплывашка + еще и обект window.JCCatalogElement = undefined хотя скрипт в хедере подключен и параметры в шаблоне все передаются.
От себя добавлю, со стандартными шаблонами одна возня при интеграции, задумка очень хорошая, но реализация очень плохая, если всю верстку шаблона компонентов полностью свою вставлять, то проще и быстрее все на jQuery ajax сделать. Это впечатление у меня возникло именно сегодня при первой же интеграции верстки в системные шаблоны, я решил попробовать, обещал сегодня клиенту уже весь сайт сделать, вот, чуть-чуть не хватает, а доков никаких по JCCatalogElement, JCCatalogSection нет, уже 0:38, завтра утром будет клиент слушать: еще не готово)))). Вот почему window.JCCatalogElement = undefined, хотя в шаблоне он вызывается и все параметры передаются, я ф/з и не разобраться без знаний JS на 4/5. http://joxi.ru/3auQU_3JTJAmYwTm7KY http://joxi.ru/LqyQUxjKTJBKH9Hf1jI http://joxi.ru/c6yQU_3JTJA_Y4tsU2cкак все это уже надоело, второй месяц эта история с редактором так и продолжается http://joxi.ru/kKyQU_3JTJBzPiWqO9s
Для своих прогеров разобрал шаблон компонента catalog.section (ссылка на архив: http://yadi.sk/d/ipAcM6PdSSsrm ) входящего в состав комплексного компонента bitix:catalog на кучу файлов отдельно заинклюденных (include() php) в основной файл template.php всё подписал и прокомментировал. Теперь натягивать новую вёрстку с сохранением функционала задуманного разработчиками 1С-Битрикс - проще простого.
Цитата
Leech AXSS пишет: + На данный момент делаю магазин на Бизнесе со всеми обновлениями, в catalog.element кнопка Купитьработает как обычная ссылка, не появляется всплывашка
в catalog.element - кнопка купить так и работает, никакой вспышке в карточке товара появляться и не должно. Система сразу отсылает пользователя в корзину, мотивируя его к покупке. Всплывающее окно ( "вспышка" )необходимо там где пользователь видит список товаров и если он захочет купить несколько ему не придётся возвращаться из корзины в список товаров для совершения ещё одной покупке.
Цитата
Leech AXSS пишет: + еще и обект window.JCCatalogElement = undefined хотя скрипт в хедере подключен и параметры в шаблоне все передаются.
проверьте ещё раз, поставьте alert( "!!!" ) в файл script.js лежащий в папке с компонентом, вы могли затереть команду инициализации JS в шаблоне компонента.
Александр Андреев пишет: в catalog.element - кнопка купить так и работает, никакой вспышке в карточке товара появляться и не должно. Система сразу отсылает пользователя в корзину, мотивируя его к покупке. Всплывающее окно ( "вспышка" )необходимо там где пользователь видит список товаров и если он захочет купить несколько ему не придётся возвращаться из корзины в список товаров для совершения ещё одной покупке.
Александр, добрый день. Тут я с Вами не соглашусь, например, я хочу зайти в карточку товара и положить его в корзину, как в нашем случае быть? Зайти в корзину по кнопке Купить и вернуться опять в каталог прыжками по меню?))) Неее, это насильственное деяние над посетителем сайта на самом деле))) Вот я наоборот никогда в списке товаров не нажму купить, пока досконально все не прочитаю про товар, вот в детальном описании в моем магазине обязательно должны быть две кнопки Купить, В корзину. Я не имею ввиду что это правильно и везде так должно быть, мне как разработчику в коде эти кнопки нужны, чем больше, тем лучше, а не как покупателю)))
+ вот в примере у Юрия Волошина, как раз всплывашка есть в catalog.element по кнопке Купить, вот как он ее там сделал?)))
Цитата
Александр Андреев пишет: проверьте ещё раз, поставьте alert( "!!!" ) в файл script.js лежащий в папке с компонентом, вы могли затереть команду инициализации JS в шаблоне компонента.
Так console.log(object) выводит undefined из этого файла script.js в самом условии проверки существования объекта, на скрине выше есть. В исходном коде объкт есть, в DOM он пустой, ЕДРИТЬ МАДРИТЬ!! Ладно, забейте ребята, все выходные посвящу новым шаблонам, куда деваться)) Вот сегодня еще один Баран родился, поле Адрес для физика не выводится при оформлении заказа, но когда нажимаешь Оформить заказ, ошибка появляется, что адрес не заполнен, компрессия!
Да, добрый день ) ! В примере Юрия Волошина меня перекидывает в корзину. Чтобы сделать всплывающее окно, можно стащить пару методов из script.js компонента catalog.section , обратите внимание на метод Basket http://joxi.ru/A1mRUxjKTJBDH74YfmE в нём для товаров типа offer есть обработчик http://joxi.ru/5FmRUxjKTJBPHw_oycI сейчас уже не вспомню, но на каком-то проекте мы такой манёвр уже делали, всё прекрасно работает.
Александр Андреев пишет: Да, добрый день ) ! В примере Юрия Волошина меня перекидывает в корзину. Чтобы сделать всплывающее окно, можно стащить пару методов из script.js компонента catalog.section , обратите внимание на метод Basket http://joxi.ru/A1mRUxjKTJBDH74YfmE в нём для товаров типа offer есть обработчик http://joxi.ru/5FmRUxjKTJBPHw_oycI сейчас уже не вспомню, но на каком-то проекте мы такой манёвр уже делали, всё прекрасно работает.
Александр Андреев пишет: Для своих прогеров разобрал шаблон компонента catalog.section (ссылка на архив: http://yadi.sk/d/ipAcM6PdSSsrm ) входящего в состав комплексного компонента bitix:catalog на кучу файлов отдельно заинклюденных (include() php) в основной файл template.php всё подписал и прокомментировал. Теперь натягивать новую вёрстку с сохранением функционала задуманного разработчиками 1С-Битрикс - проще простого.
Вы молодец. А что будете делать если в 15й версии все перелопатят?
Цитата
Leech AXSS пишет: От себя добавлю, со стандартными шаблонами одна возня при интеграции, задумка очень хорошая, но реализация очень плохая, если всю версткушаблона компонентов полностью свою вставлять, то проще и быстрее все на jQuery ajax сделать.
Я за jQuery во фронтенде, причем во всех компонентах. Те отказ от BX js полный, его оставить для админки. Была мысль даже идею создать, но не стал. Все равно не сделают.
Разработка и поддержка интернет магазинов на Битрикс www.fl.ru/users/electroid/, интеграция битрикс и 1С.
буду писать блог про 15-ю версию. Всё никак руки не доходят, хочу на сайте нашей студии блог вести по вот таким всяким фишечкам в 1С-Битрикс, есть наброски 3-х статей (по умному фильтру, интеграции дизайна с глубинным изменением всего всего и по настройке рабочего места программиста), но времени пока на них нет.
Дмитрий Ипатов пишет: Я за jQuery во фронтенде, причем во всех компонентах. Те отказ от BX js полный, его оставить для админки. Была мысль даже идею создать, но не стал. Все равно не сделают.
Лучше серию интерфейсов написать для реализации своих фишек в GUI и поддерживать её. Зависеть от сторонней библиотеки типа JQuery тоже нельзя. Представляете ситуацию если в Jquery решат вдруг всё поменять и 10 -20 тысяч сайтов перестанут работать.
Александр Андреев пишет: Лучше серию интерфейсов написать для реализации своих фишек в GUI и поддерживать её. Зависеть от сторонней библиотеки типа JQuery тоже нельзя. Представляете ситуацию если в Jquery решат вдруг всё поменять и 10 -20 тысяч сайтов перестанут работать.
Leech AXSS пишет: Одну кнопку вставки года второй год жду
А чё ждать то, написали бы сами, альтернативный визивик с поддержкой всех необходимых разработчику кнопок и функций, оформили бы в модуль, и на маркетплейс - денег бы заработали.
Leech AXSS, воздержитесь в дальнейшем от публикации изображений с обсценной лексикой. Ваши сообщения скрыты. При рецидиве будем вынуждены перевести в режим "только чтение".
Не надо сверлить зубы через задний проход дрелью от Сваровски