[miniShop2] Как идентифицировать на фронтенде товар, успешно добавленный в корзину?
В каталоге нужно обратиться к товарам в DOM через JS, но надо как-то идентифицировать товар, который был добавлен в корзину и обработан бэкенд-плагинами MODX.
Использую данный callback на фронтенде для отлова события товара, успешно добавленного в корзину:
Как мне в коллбэке обратиться на странице каталога к успешно добавленному товару?
Коллбэк не возвращает его ID
Спасибо.
Использую данный callback на фронтенде для отлова события товара, успешно добавленного в корзину:
document.addEventListener('DOMContentLoaded', function () {
if (typeof miniShop2 !== 'undefined') {
miniShop2.Callbacks.add('Cart.add.response.success', 'add_ok', function (response) {
console.log(response);
});
}
});В ответе получаю только ключ товара в корзине, но никак ни его идентификатор, по которому добавленный товар можно найти на странице:{success: true, message: "Товар успешно добавлен в корзину: 1", data: {
key: "f5249335281849f342cd30c690be8bdc",
total_cost: 0,
total_count: 1,
total_weight: 0
}}Обратиться по ключу response.data.key в DOM тоже нельзя, так как pdoPage/msProducts не выводят плейсхолдер [[+key]] товара, чтобы например сделать его в каталоге так:<div class="ms2product" id="product_key_[[+key]]">..</div>
И обратиться к этому товару так:
<script>$('#product_key_' + response.data.key + ' .product__status').html('Товар успешно добавлен');</script>Как мне в коллбэке обратиться на странице каталога к успешно добавленному товару?
Коллбэк не возвращает его ID
Спасибо.
Комментарии: 4
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Но к сожалению не сработало, MD5 суммы отличаются. {$key} товара с одной хеш-суммой, а в коллбэке вернулась другая
Прям в коде минишопа добавь такую строку (чтобы в журнале ошибок увидеть):
И в чанке сделай
И посмотри, чем отличаются эти строки.