Вы определили Правило корзины покупок? Если нет, то с чего начать. В области администрирования перейдите в раздел «Акции»> «Правила корзины покупок»> «Добавить новое правило» и укажите конкретный купон с выбранным выбором «Автоматическое генерирование».
Как только вы определили правило для какой-либо конкретной скидки, которую вы хотите предложить, сохраните правило и запишите идентификатор правила из строки правил Price Price Shopping, показывающей правило, которое вы только что создали.
Затем добавить что-то вроде следующего, используя правило идентификатор вы только что создали правило:
функция ниже принимает ассоциативный массив со следующими параметрами:
rule_id = правилу ID, сверху
кол-во = количество купонов, чтобы инструктировать Magento генерировать
длина = длина каждого сгенерированного кода купона
format = alphanum (для буквенно-цифровых кодов) ИЛИ альфа (для алфавитных кодов) ИЛИ num (для числовых кодов)
protected function getCouponCode($couponData)
{
$rule = $this->_loadSalesRule($ruleId);
// Reference the MassGenerator on this rule.
/** @var Mage_SalesRule_Model_Coupon_Massgenerator $generator */
$generator = $rule->getCouponMassGenerator();
// Validate the generator
if (!$generator->validateData($couponData)) {
$this->_critical(Mage::helper('salesrule')->__('Coupon AutoGen API: Invalid parameters passed in.'),
Mage_Api2_Model_Server::HTTP_BAD_REQUEST);
} else {
// Set the data for the generator
$generator->setData($couponData);
// Generate a pool of coupon codes for the Generate Coupons rule
$generator->generatePool();
}
}