Смяната на вариант на продукт не обновява цените и опциите в уиджета
Добавили сте продукт към оферта и сте включили уиджета. Сега, когато превключвате между вариантите на продукта (размери, вкусове, цветове), цените или изборите за абонамент и пакет в уиджета не се променят, докато не презаредите страницата. Тази статия обяснява защо се случва това и как го поправяме вместо вас.
Съдържание
Защо се случва това?
За да следва уиджетът промените на варианта, темата ви трябва да казва на приложенията, когато клиент избере нов вариант. Повечето теми го правят. Някои персонализирани, по-стари или силно променени теми не го правят, така че уиджетът никога не научава за промяната. Друго приложение също може да пречи, най-често друго абонаментно приложение или приложение, което замества селектора за варианти на темата.
Това не е нещо, което трябва да поправите в настройките си. Това е проблем със съвместимостта на темата и нашият екип го поправя от наша страна за вашата тема, обикновено без никаква промяна в кода на темата ви.
Препоръчителен подход
За да ни помогнете да го поправим бързо, моля, изпратете:
- Връзка към страница на продукт, където се случва. Продуктът трябва да е в Публикувана оферта.
- Уиджетът трябва да е включен във вашия магазин (вижте Как да активирате абонаментния уиджет в онлайн магазина).
- Ако вашият онлайн магазин е защитен с парола, паролата на магазина (как да я намерите).
Можете да пишете и на имейл support@subscriptions.super-simple.co, но чатът на живо е най-бързият начин да се свържете с нас.
Техническо обяснение
Ако сте разработчик или имате такъв в екипа си, това обяснява какво слуша уиджетът.
Когато уиджетът се зареди на страницата на продукта, той слуша за събитие change върху полето за вариант във формата на количката, което е един от тези два елемента:
form[action$="/cart/add"] input[name="id"]илиform[action$="/cart/add"] select[name="id"]
Слуша и за събитията variant:selected и variant:update, които по-новите теми (като Horizon) изпращат от своя елемент variant-picker.
Най-честата причина уиджетът да не се обновява е, че темата променя стойността на полето за вариант в кода, без да задейства събитие change. Задействането му след промяна на стойността го поправя: variantInputElement.dispatchEvent(new Event("change", { bubbles: true })).
За да обновите уиджета сами, извикайте тази функция, която е налична в обекта window във вашия онлайн магазин:
$superSubscriptions.triggerProductVariantRefresh(event?: Event)
Параметърът event е по избор. Подайте го само когато уиджетът не може сам да вземе ID на новия вариант.
Често задавани въпроси
Цената в уиджета се обновява само след като опресня страницата. Защо?
Темата ви не казва на приложенията, че вариантът е променен. Изпратете ни връзката към продукта през чата на живо и ще добавим поддръжка за вашата тема.
Цената в уиджета е различна от цената в количката. Какво да направя?
Изпратете ни връзката към продукта и варианта, който сте избрали. Ако уиджетът е пропуснал промяна на вариант, може да показва цената на предишния вариант. Ще проверим и ще го поправим за вашата тема.
Трябва ли да променям кода на темата си?
Не. В повечето случаи го поправяме от наша страна. Техническото обяснение по-горе е само за търговци, които имат собствен разработчик.
Случва се само откакто инсталирах друго приложение. Свързано ли е?
Възможно е. Приложения, които заместват селектора за варианти, или други абонаментни приложения могат да попречат на уиджета да види промяната. Кажете ни кои приложения сте инсталирали, когато се свържете с нас.
Обновено на: 24/10/2026
Благодарим ви!
