Теги

Комментарии ()

  1. Юлия 29 февраля 2020, 08:54 # 0
    А где раскомментить нужно? Не совсем поняла!
    1. TrywaR 29 февраля 2020, 18:42 # 0
      Не нужно раскоменчивать( видимо потом раскоментировал но забыл удалить текст
    +
    T
    >

    MODX Revo | ShopKeeper3 > сохранение корзины в БД при закрытии вкладки, разлогировании

    10.02.2019 17:09
    11.02.2019 04:02
    1886

    /* Превью

    Ну пдц, начинаю понимать почему советуют использовать miniShop2, нет такого элементарного функционала, сначала подумал что ошибка какая то на сайте..

    */

    В общем такие дела, заметил что если ты в магазине на ShopKeeper набиваешь товары в заказ, потом авторизуешься на сайте и закрываешь браузер, то когда заходишь потом, ты не залогинен еще и корзина пуста, еще к тому же если ты залогинился с другого браузера или устройства то состав корзины будет отличаться.. Думал баг, оказалось нужно допиливать функционал.

    Ниже плагин, который позволяет хранить корзину клиента в базе данных и сохранять её при разлогировании. При авторизации он суммирует корзину которая была до авторизации с той что сохранена в аккаунте.

    За основу взял пример для реализации на modx evo написанный человеком под ником Grinyaha на modx.im, немного допиленный под Revo пользователем dunai на modx.ru, но в итоге всё переменял :(

    Правки в базе

    Добавляем таблицу users_cart со столбцами id параметры INT NOT NULL AUTO_INCREMENT, user_id тип INT и cart_data тип LONGTEXT. Там будут храниться корзины пользователей.

    Ну или просто юзаем SQL код

    CREATE TABLE
        `users_cart` (
            `id` INT NOT NULL AUTO_INCREMENT,
            `user_id` INT,
            `cart_data` LONGTEXT,
            PRIMARY KEY(`id`)
        )

    Код плагина

    События для плагина