Как не допустить, чтобы расширение Wooccommerce Composite Product умножало количество составных элементов на количество базового продукта? - PullRequest
0 голосов
/ 27 мая 2018

Расширение Wooccommerce Composite Product позволяет вам создать один продукт, который является комбинацией базового продукта и одного или нескольких компонентов.Это похоже на наличие одной или нескольких маленьких коробок внутри одной большой коробки и одной большой коробки внутри еще большей коробки.Количество маленьких коробок внутри одной большой коробки может быть увеличено, а количество одной большой коробки также может быть увеличено, но в результате получается еще большая коробка.

У меня есть базовый продукт (скейтборд), и у меня есть комплектующие изделия (грузовики, колеса и т. д.), которые можно при желании добавить в общий заказ.Количество составляющих продуктов может быть увеличено так же, как количество базового продукта.

Проблема в том, что когда количество базового продукта увеличивается, количество составляющего продукта умножается на количествобазового количества продукта, в результате чего в корзину добавляется большее количество компонентов.

Пример: я хочу заказать два скейтборда и ДВЕ грузовика для доски.Когда я нажимаю кнопку «Добавить в корзину», плагин рассчитывает цену двух плат и четырех грузовиков.

Вот ссылка на составной продукт

Ссылка на результаты заказа на странице корзины

Итоговая сумма должна составлять $ 60= (2x $ 10) + (2x $ 20), НЕ $ 100 = 2 [(2x $ 20) + $ 10]

1 Ответ

0 голосов
/ 28 мая 2018

Я нашел решение этой проблемы.Для этого мне пришлось изменить код в файле class-wc-cp-cart.php, расположенном в папке include.Пришлось разделить количество составного компонента на количество базового продукта в двух местах.

Строка 432: $ количество = $ item_quantity * $ композитное_количество / $ item_quantity;

Строка 1184: $ количество = $composited_product-> is_sold_individual ()?1: $ item_quantity * $ композитное_количество / $ item_quantity;

...