Спробуйте створити імперативну подарункову карту

редагувати When adding more than one of the same product to the cart, the qty obviously increases, but it is possible to treat one or more products separately. Ie, if i add product A twice, it shows up as two separate products in the cart? // end редагувати

Я зробив наступне.

1) Включено order_custom1 і 2 в касі. Я використовую 1 для створення довільного рядка, який слугує номером подарункової картки. Я використовую 2, щоб зберегти вартість подарункової картки (загальна сума позиції)

2) Оскільки спеціальні поля знаходяться всередині партії тегів {items}, вони копіюються для кожного продукту (подарункової картки) у кошику. Однак я починаю думати, що неможливо надіслати більше, ніж одне з кожного спеціального поля, і що вони дійсно повинні бути поза парою {items}, чи правильно це?

Причина, про яку я питаю, полягає в тому, що коли я виводя спеціальні поля в огляд замовлення, я можу отримати ці значення лише в останньому користувальницькому полі (1 і 2). Це, незважаючи на виведення їх всередині пари {items}.

редагувати

Якщо я можу надіслати лише один раз за кожну перевірку, чи існує спосіб дозволити лише один продукт із певного каналу бути в кошику за замовленням? Іншими словами, чи можу я змусити користувача дозволити лише одну "подарункову картку" за замовлення?

3

1 Відповіді

Правильно, спеціальні поля замовлення належать замовленню, а не окремим позиціям, тому вони будуть однаковими для всіх елементів.

Найкращий спосіб підійти до цього полягає в тому, щоб створити випадкову ланцюжок (маркер подарункової картки), коли ви додасте окремий продукт до кошика, використовуючи модифікатори. Магазин завжди об'єднує продукти з копією продукту в один рядок, однак, якщо вони мають різні модифікатори, вони не будуть об'єднані.

Ви можете почати, використовуючи спеціальні модифікатори тексту у своєму тезі продукту:

{exp:store:product entry_id="123" input:code="Gift Code"}

    <input type="hidden" name="code" value="random-string" />
    <input type="hidden" name="item_qty" value="1" />
    <input type="submit" value="Add to Cart" />

{/exp:store:product}

Щоб клієнти могли обрати ціну, ви можете створити модифікатори на сторінці публікації або просто створити унікальні продукти за кожною ціною або ввімкнути «динамічні ціни продукту» для поля каналу та дозволити клієнтам надіслати price .

Тоді у вашому кошику кожен елемент матиме інший унікальний код і відображатиметься як окремий рядок-позиція у рахунку-фактурі. Використовуючи цей метод, вам не потрібно використовувати спеціальні поля замовлення.

2
додано
Як ви маєте на увазі "подати" код знижки? Використовуйте це при оплаті замовлення чи бажаєте його фактично створити в базі даних?
додано Автор ESV, джерело
Я бачу. Так, вам також потрібно буде створити їх у магазині. Це настільки просто, як додати їх до таблиці бази даних exp_store_discounts .
додано Автор ESV, джерело
Ага, відмінно. Чи можу я побачити код у рахунку-фактурі, але чи можу я вивести його всередину {items} в огляді замовлень клієнтів (шаблон інтерфейсу)? Ще краще, чи можу я вивести його поряд із елементом у кошику, щоб я міг використовувати канал: форма, щоб подати його там, де я хочу це зробити?
додано Автор Oliver_C, джерело
Не хвилюйтеся, {модифікатори} {modifier_value}
{/ modifiers} зробили трюк
додано Автор Oliver_C, джерело
Вони будуть використовуватися для фізичних подарункових карток, але як бонус, чи є спосіб зробити форму каналу подавати код знижки в магазині?
додано Автор Oliver_C, джерело
Чи не треба створити для використання? Що я маю на увазі, тепер у мене є установка, де коди знижки зберігаються як записи каналів, щоб клієнти могли використовувати їх у фізичному магазині (я використовував для нього канал: форма), але, крім того, вони можуть бути створені як коди знижки у магазині також?
додано Автор Oliver_C, джерело
Дуже старий, але я повернуся до цього. Чи є спосіб додати код до цієї таблиці, який не дозволяє користувачеві просто надіслати кошик, але не здійснювати платежі?
додано Автор Oliver_C, джерело