Несколько купонов или один купон для нескольких продуктов

В настоящее время я занимаюсь разработкой сайта электронной коммерции, используя платформу xcart 4.7. Я включил модуль скидочных купонов. В текущей реализации конкретный купон применим только для отдельного продукта или отдельной категории и ее подкатегорий. Как это можно изменить, чтобы принять несколько продуктов и категорий, как в открытой корзине? Или добавить несколько купонов одновременно в корзину?

0

Решение

1) Создайте новую таблицу как

xcart_discount_coupons_products (
id mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
productid int(11) NOT NULL DEFAULT '0',
... keys
)

2) Добавьте новое поле в таблицу xcart_discount_coupons

ALTER TABLE xcart_discount_coupons add pid_link mediumint(8) unsigned NOT NULL DEFAULT 0 COMMENT 'Link to xcart_discount_coupons_products.id';
Add a mysql key for xcart_discount_coupons.pid_link if needed

3) Настройте функцию func_is_valid_coupon

от
файл modules / Discount_Coupons / func.php
принять новые условия нескольких продуктов.

} elseif ($my_coupon['pid_link'] > 0) {
......
Your new code will slightly different from the "if ($my_coupon['productid'] > 0)" handler
......

4) Настройте функцию func_calculate_discounts из
включают в себя / Func / func.cart.php

Вы должны добавить новое условие для вашего нового поля $ discount_coupon_data [‘pid_link’] здесь

            if ($discount_coupon_data['productid'] > 0) {
......
if ($product['productid'] != $discount_coupon_data['productid'])
continue;

5) Изменить фоновые файлы, чтобы принимать несколько продуктов
Вы должны изменить
файлы
кожа / common_files / модули / Discount_Coupons / coupons.tpl
поставщик / coupons.php

Кстати, вы можете ввести несколько SKU через запятую
SKU17482, SKU17511, от версии 4.7.4 X-Cart
https://www.x-cart.com/blog/4-7-4-released.html#search-faster

Вы должны настроить эту часть кода, чтобы принимать несколько SKU
поставщик / coupons.php

$newproduct_ids = !empty($productid_new) ? array(intval($productid_new)) : XCAjaxSearchProducts::extractIdsFromStr($productname);
$productid_new = $newproduct_ids[0];

6) Повторите шаги для категорий

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector