Добрый день!
Где находится php контроллер для формы на странице checkot`a?
там где и все контроллеры фронтенда
app/controllers/frontend
Это понятно)
Просто именно необходимы контроллер найти не могу, думал, может кто-то уже находил
app/controllers/frontend/checkout.php
может вы термин неверно используете?
опишите, что хотите сделать
Хочу посмотреть код изменения кол-ва товара в корзине по кнопкам ‘+’ и ‘-’
И сделать точно такие же кнопки на странице товаров, чтобы товар добавлялся без кнопки “Добавить в корзину”
Хотя, здесь скорее ajax нужен…
Подскажите, пожалуйста, в каком направлении двигаться
Вам всё правильно подсказали.
app/controllers/frontend/checkout.php
Мод ‘add’. Кнопки ± изменяют значение amount в форме которое потом обрабатывается на стороне php. Аякс тут не совсем то что Вам, вероятно, нужно.
А вот можете подсказать, как на главной странице сделать кнопки ±, чтобы они добавляли товар в корзину при клике на +, изначально в инпуте будет не 1, а 0 и кликает только на ±, без дальнейшего клика на кнопку “добавить в корзину”
Там карточка товара это форма, значит нужно отправлять форму при клике на ±? И поставить задержку на около 100 мс, чтобы можно было накликать много товаров до отправки формы
Да, то что Вы говорите должно сработать.
Там смотрите, получается ± делаем ссылками, то беж + - (классы не пишу). Но у оригинальной формы отправка идёт по кнопке с name=“dispatch[checkout.add…xxx]”, где вместо xxx код товара. Вы не знаете, как отправлять форму по клику на ссылку с передачей этого name="". Если это возможно, то дело за малым: добавить кнопки в шаблон + добавить js задержки, чтобы можно было быстро прокликивать, а не ждать после каждого +1
А хотя можно просто свои button в виде ± сделать и там выставить необходимы name
Только вот столкнулся с проблемой. Добавлять товар на + получается, форма отдаётся контроллеру с модом “add”, а как убирать не разобрался, такого mode=“remove” нет.
Кто-нибудь знает какой контроллер и какой mode отвечает за убавление товара в корзине?
Посмотрите какой код вызывается при клике на крестик в миникорзине. На вскидку не вспомню. Сейчас не за компьютером.
Так там код для полного удаления товара из корзины, не зависимо от количества этого товара в корзине. Мне нужно, чтобы при клике на ‘-’ убавлялся один товар, а при клике на ‘+’ прибавлялся один. Как поступить с + уже знаю, а вот с - пока нет
Удаляет товар из корзины полностью. Потом ложите/кладете -1 от того что там было. Или удаляет полностью если там был только 1
А можно создать свой mode в контроллере и сделать просто -1 от имеющегося кол-ва?
Тут ещё до переменной cart_id не дотянуться из карточки товара, чтобы отправлять запрос об полном удалении…
Так как инфа о корзине хранится в сессии, а сессии пишутся в БД, то может запросом оттуда менять инфу. Но там тоже пару моментов надо подъяснять, потому что при прямом изменении кол-ва в базе данных не меняется кол-во в корзине, но если полностью удалить инфу о товаре в корзине из сессии, то и в корзине интернет- магазина удалится.
Может кто-то знает?
Делайте свой мод для удаления. Т.к. cart_id в данный момент нет, ищите товар Tygh::$app[‘session’][‘cart’][‘products’] по id товара. Тут даже в базу лезть не надо
В тех поддержке предложили через mode=“update”
Спасибо!
Буду пробовать!