В этой заметке рассакажу как добавлять товары в "Отложенные", для иммитации функционала "Избранное". Для этого будем использовать API 1С-Битрикс. Добавление будет происходить на AJAX- без перезагрузки страницы.
Добавление в избранное или отложенные, на AJAX из карточки товара
26.01.2018 09:28:56
Здравствуйте!
Как при добавление в избранное передать значения выбранных торговых предложений? Пыталась добавить через параметр "PROPS" CSaleBasket::Add($arFields); вышло таким образом https://c2n.me/3Rn0pZ1 |
|
|
29.03.2018 00:45:54
Присоединяюсь.
Подскажите как добавить в избранное Торговые предложения. |
|
|
11.05.2018 11:19:03
Хром вот такую ошибку выдает при клике Uncaught SyntaxError: missing ) after argument list |
|||
|
11.05.2018 11:49:11
В названии продукции есть слово L'Oreal и верхний апостроф мешал корректному вызову... Убрал из кода '<?=$arResult["NAME"]?>', и еще ко что.. |
|||||
|
03.06.2018 19:29:05
Здравствуйте!
Замечательные уроки, всё получается, но есть вопрос, у Вас на сайте есть список отложенных товаров - как его вывести(отдельно от корзины)? |
|
|
22.07.2018 02:13:11
ошибка здесь, лишняя скобка...
"NAME" => $_POST['name']), |
|
|
22.07.2018 10:52:11
|
|||
|
23.09.2018 17:47:58
День добрый!
Спрашивал, на недавней трансляции, про фичу "Купить в один клик", был послан примерно сюда, а тут не такого |
|
|
05.10.2018 05:04:04
Интересный момент, битрикс последний, шаблон дефолтный магазина, при добавлении в избранное товар появляется в корзине, но у него цена пустая, и есть кнопка добавить в заказ http://joxi.ru/brRpkKqCJkEWE2 , но даже при добавлении цена не появляется, я так полагаю потому что не передаётся параметр PRICE?
|
|
|
05.10.2018 11:34:25
Просто, передавайте в "избранное" первое попавшееся торговое предложение, а не сам товар. |
|||
|
19.10.2018 01:27:52
Здравствуйте,
подскажите как передать еще торговое предложение в избранное?! |
|
|
06.01.2019 15:54:35
Добрый день.
Все работает, но только для авторизованных пользователей. Также обратил внимание, что другие java скрипты глючат на неавторизованных пользователях, как будто не всё ядро подключено. Пример здесь. В чем может быть дело? Корзина глючит тоже, форма регистрации не показывает капчу. В общем, какая-то масса проблем с общим корнем, а в документации не нашел ничего. |
|
|
06.01.2019 22:32:22
Если нет-то подсказать тяжело, нужно разбираться изнутри Чуть позже, будет заметка о реализации отложенного- не на базе избранного. |
|||
|
16.04.2019 14:51:00
Михаил, спасибо за ваши видео и уроки, помогают разобраться с битриксом.
Хотел бы сказать по поводу данного скрипта, что он плох в безопасности. Использую ваши заготовки. Цена передается через аякс, что не есть хорошо! Вот пример Через консоль браузера меняю цену: http://joxi.ru/82QvQ0liwVOe6A Жму в отложенные, теперь у меня в отложенных лежит товар с ценой 70.00 http://joxi.ru/brRv5Joi7Leger Перекидываю его в корзину и что я вижу, теперь вместо товара с ценой 20070.00 руб. получаю товар за 70р. Могу оформить заказ за 70р вместо 20070.00 На вашем сайте так же! Взял для примера товар http://bxstore.ru/catalog/item/audio-technica-vm520eb-h-golovka-zvukosnimatelya.php http://joxi.ru/gmvKvnNcqdX5W2 http://joxi.ru/nAyRxkgTga1Oqr Я бы сказал это критическая уязвимость... Так же при перекидывание из отложенных в корзину, количество товаров становиться 2, а не 1. Должен же просто меняться флаг на "DELAY" => "N" Логика наверно должна быть такая, что через аякс передается ID товара, а уже внутри скрипта получаем все данные , в том числе и цену. Мне кажется этот код надо убирать с вашего сайта и написать без уязвимостей. |
|
|
17.04.2019 09:53:50
Не получилось именно купить такой, "хакнутый" товар. При оформлении заказа, все равно установилась правильная цена. Но да, минусом это можно назвать. Да и достаточно, в самом деле, передавать только ID товара в ссылке и скрипте. Вообще, эта модель, избранное-через отложенные корзины, мне не очень нравится и уже готов компонент нормальных избранных. Скоро опубликую, в блоге. Допричесать нужно. |
|||
|
17.04.2019 10:48:48
В этом плане модх конечно выигрывает, так сказать для разработчиков проще.
|
|||||||||
|
14.05.2019 13:33:58
а как сделать чтобы при повторном нажатии данный товар убирался из "избранного" ???
|
|
|
14.05.2019 13:36:51
|
|||
|
25.05.2019 18:53:22
А как сделать чтобы товары из избранного не удалялись при оформлении заказа в корзине? Пользователь оформляет заказ и все его сохраненные товары исчезают
|
|
|
21.07.2019 22:12:44
Михаил Базаров,
подскажите пожалуйста, как на аяксе реализовать вывод избранных товаров? используя функционал из данного урока. при клике на кнопку добавить в избранное у вас меняется сразу же счетчик. к примеру к нему добавлю всплывающее окно - и в нем выведу "отложенные" - тогда они там появляются только после перезагрузки страницы, а хотелось бы чтоб сразу всплывали. |
|
|
24.07.2019 00:15:12
Михаил Базаров, Подскажите пожалуйста как сделать чтобы не сбрасывался стиль кнопки, в списке товаров- если данный товар есть в отложенных?!
|
|
|
10.04.2021 16:32:50
Понятное дело, не сам компонент оформления заказа, а "подкапотная" реализация. У меня уже готов свой компонент избранного, пишет все отдельную табличку БД - на нескольких проектах работает успешно. Скоро (не знаю когда ) заверну его в установщик и поделюсь.
Изменено: |
|||
|
01.11.2021 10:37:52
Добрый день!
Скажите пожалуйста а как добавить кнопку удалить из избранного для одного товара из списка. Удалить все -работает Но хочется по одному удалять |
|
|
13.01.2022 14:11:18
|
|||||
|
12.08.2022 15:59:24
А как сделать чтобы при наведении на значек корзины выводилось ее содержимое( краткое описание и маленькое фото ) ,BX.addCustomEvent ? не в ту сторону копаю?
|
|
|
12.08.2022 19:43:53
В штатном шаблоне корзины sale.basket.basket.line это уже есть. Верстка в файле ajax_template.php |
|||
|
14.08.2022 20:31:23
Спасибо)
|
|
|
23.09.2022 03:12:26
Добрый вечер, с детальной карточки товара товар добавляется в избранное, а как добавить товар в избранное с catalog.item или catalog.section?
|
|
|
23.09.2022 10:21:47
Нужно правильно передать ID товара. В catalog.item это $item['ID'] в catalog.section, вроде бы $arElement['ID'] |
|||
|
26.09.2022 14:17:39
Спасибо! это сработало)
|
|
|
06.02.2023 02:40:41
Доброй ночи, добавление в избранное по вашей методике работает отлично в catalog.item, подскажите пожалуйста, а как удалить из избранного при повторном нажатии на добавление в избранное?
|
|
|
06.02.2023 10:20:56
Добрый.
По сути, нужно сделать обратное действие: не добавить товар в отложенные корзины а удалить его оттуда. Для этого, можно проверить наличие этого товара в отложенных и если он там есть использовать метод CSaleBasket::Delete
Если будет время, дополню эту заметку. Но ориентир, в какую сторону копать дал)
Изменено: |
|||
|
06.02.2023 13:21:58
Спасибо большое, буду пробовать, но если дополните заметку буду признателен)
|
|
|
17.02.2023 18:53:18
Добрый день, а как сделать, чтобы отложенные товары в самой корзине не отображались? Это возможно? Использую современный шаблон basket. Спасибо
|
|
|
17.02.2023 23:00:09
Да, просто подправить этот момент в шаблоне /ШАБЛОН_КОРЗИНЫ/js-templates/basket-item.php
Изменено: |
|
|
23.04.2023 15:04:34
Михаил, привет!
Прочитал вашу статью, но с момента ее выхода, как я понимаю, многое поменялось, и теперь советуют делать избранное на пользовательских полях. Что думаете на эту тему? |
|
|
23.04.2023 15:32:12
И еще один вопрос, если позволите.
Как в компоненте sale.basket.basket вывести избранное? Спасибо! |
|
|
23.04.2023 19:02:55
Да, лучше делать на пользовательских полях. У меня уже готовы модуль и компонент, который это реализует. Но выложу я его в процессе выпуска видеоурока по разработке сложного интернет магазина. На вскидку, доберусь до этого вопроса к июлю 2023
Изменено: |
||||
|
||||
Блог-note: заметки разработчика
Малая корзина Битрикс, упрощенный шаблон
Шаблон малой корзины битрикс, который можно вывести в боковом разделе шаблона или в шапке интернет-магазина. Код окульту...
Показать доступный остаток каждого товара в корзине 1С-Битрикс
Задача: показать остаток каждого товара в корзине 1С-Битрикс, что бы покупатель сразу знал предельное колличество товара...
Дополнительные параметры в меню Битрикс
Иногда нужно присвоить какой-то функционал к конкретному пункту меню в битрикс. Например открывать ссылку в новом окне и...
Отключить поиск по описаниям товаров в Битрикс
Иногда, нужно отключить поиск по описаниям анонсов и детальному описанию товаров, при разработке сайтов на Битрикс. Сдел...
Вывод элементов с помощью API битрикс
Иногда, выводить элементы инфоблока с помощью компонентов, может оказаться избыточным. Например, если нужно вывести элем...
Вывести свойство отдельно ото всех или исключить из всех
Иногда, на сайте, под управлением 1С-Битрикс, нужно вывести какое-то конкретное свойство отдельно ото всех, или вообще н...
Умный фильтр только на последнем уровне разделов каталога.
Если в разработаываемом магазине или в принципе в каталоге на Битрикс, вы выводите умный фильтр в разделах - он выводитс...
Получить и вывести все цены товара в 1С-Битрикс
Задача: получить и вывести все цены товара по его ID в каталоге 1С-Битрикс (например, в детальной карточке catalog.e...
Оптимизация jpeg и png картинок на cron, с помощью jpegoptim и optipng
Задача: на сайт каждый день проходит выгрузка из 1С с обновлением картинок. Нужно оптимизмровать эти картинки с помощью...