CS-Cart акции

У нас есть куча скидок на объем корзины покупок и код купона для нашего сайта. Мы не можем добавлять эти скидки каждый раз через вкладку «Акции» в бэкенде CS-Cart. Итак, мы сделали скрипт импорта на PHP, который импортирует записи в таблицы БД "_promotions AND _promotion_descriptions". Наш скрипт импорта PHP отлично вставляет записи в таблицы БД без каких-либо проблем, и мы можем видеть эти записи на внутренней странице списка «Акции». Смотрите прикрепленный скриншот.

Но когда мы добавляем товары в корзину из внешнего интерфейса, CS-Cart не применяет объемные скидки или скидки по коду купона на нашем веб-сайте.

Наш вопрос: добавляет ли CS-Cart какие-либо ссылки на промо-акции в любую другую таблицу (включая таблицы «_promotions AND _promotion_descriptions») ИЛИ создает ссылку на новую промо-акцию в «кэше» после добавления промо-акции из бэкенда?

Похоже, что это так, поскольку, когда мы добавляем новые скидки по объему или коду купона на внутренней вкладке «Акции», эти акции работают отлично без каких-либо проблем. Но скидки на объем и код купона не работают, когда мы вручную добавляем записи в таблицу БД через наш PHP-скрипт импорта.

Может ли кто-нибудь помочь нам с этим, так как мы не можем найти онлайн-справку для таблиц БД рекламных акций CS-Cart.

Спасибо.

введите здесь описание изображения


person user2136790    schedule 15.04.2014    source источник


Ответы (3)


CS-Cart использует только эти две таблицы для данных об акциях:

cscart_promotions

cscart_promotions_descriptions

Итак, я бы рекомендовал вам проверить данные в БД для рекламных акций, которые вы создаете с помощью скрипта. На вашем месте я бы создал две похожие акции, одну с использованием бэкэнд-интерфейса CS-Cart, а другую с помощью скрипта. После этого с помощью функции fn_print_r я печатал полученные данные каждой из этих акций и сравнивал их.

Просто добавьте отладку после функций, которые получают данные продвижения в app/controllers/backend/promotions.php, это должно выглядеть так:

$promotion_data = fn_get_promotion_data($_REQUEST['promotion_id']);
fn_print_r($promotion_data);
person Ilya Makarov    schedule 16.04.2014
comment
Спасибо за ваше предложение. Но, честно говоря, я сделал это, но не повезло с этим. Прочитайте мой ответ ниже. - person user2136790; 17.04.2014

Также мы сделали одну простую вещь, которую вы можете сделать в своей собственной БД CS-Cart. Мы добавили продвижение из бэкенда, и оно вставило записи в таблицы продвижения (как указано ниже):

Данные таблицы cscart_promotions

продвижение_идентификатор - auto_increment

company_id (значение - 1)

условия (значение - a:3:{s:3:set;s:3:all;s:9:set_value;s:1:1;s:10:условия;a:2:{i:1;a: 3:{s:8:оператор;s:3:gte;s:9:условие;s:15:products_number;s:5:значение;s:3:500;}i:2;a:3:{s :8:оператор;s:3:lte;s:9:условие;s:15:номер_продукта;s:5:значение;s:3:999;}}})

бонусы (значение - a:1:{i:1;a:3:{s:5:bonus;s:14:order_discount;s:14:discount_bonus;s:13:by_percentage;s:14:discount_value;s: 2:15;}})

to_date (значение - 0)

from_date (значение - 0)

приоритет (значение - 0)

стоп (значение - N)

зона (значение - корзина)

conditions_hash (значение - products_number=500;products_number=999)

статус (значение - А)

number_of_usages (значение - 0)

users_conditions_hash (оставьте пустым)

Данные таблицы cscart_promotion_descriptions

Promotion_id (то же, что и cscart_promotions.promotion_id)

название (значение - Скидка за объем (500 шт.))

короткое_описание (оставьте пустым)

detail_description (оставьте пустым)

lang_code (значение - en)

Когда мы добавили вышеуказанную запись из серверной части и попытались честно использовать это продвижение во внешнем интерфейсе, это сработало. Двигаясь вперед, мы просто удалили эту рекламу из серверной части и устали добавлять ее вручную в таблицы БД рекламных акций. Он был отлично добавлен и отлично показывает нам условия и данные бонусных вкладок на бэкэнде. Смотрите прикрепленный скриншот. Но когда мы используем эти добавленные вручную рекламные акции в интерфейсе, это не работает.

Это проводная та же запись без изменений, которая отлично отображается на бэкэнде, но почему не работает на интерфейсе. Какие-либо предложения?

Спасибо.

введите здесь описание изображения

person user2136790    schedule 17.04.2014
comment
Мы нашли решение для этого. После добавления записей в таблицы БД _promotions. Мы добавили справочную запись в таблицу БД cscart_ult_objects_sharing, и промо-акции сработали для нас во внешнем интерфейсе. - person user2136790; 21.04.2014

Рядом со столиками

cscart_promotions
cscart_promotions_descriptions

требуется также вставить в таблицу:

cscart_ult_objects_sharing

данные

share_company_id = $company_id
share_object_id = $promotion_id
share_object_type = "promotions"
person Hungryweb    schedule 04.11.2016