Skip to main content

Настройка виджетов офферов с редиректом и кастомной ценой

Что нужно

  • offer_id нужных офферов (из GC или из HTML: data-offer-id="...")

  • ссылка для редиректа (для каждого оффера)

  • (опционально) текст “цены”, который показываем вместо реальной


1) JS: редирект по выбранному offer_id

Вставь JS и заполни словарь REDIRECTS:

$(function () {

  // offerId : redirectUrl
  var REDIRECTS = {
    "7820040": "https://buy.stripe.com/4gMdR9d8N2OpdJ10lt3AY0B",
    "1234567": "https://example.com/pay-1"
  };

  $('.btn.f-btn.button-md.btn-success').on('click', function () {

    var $selected = $('.form-position-input:checked').closest('.form-position');
    var offerId = ($selected.attr('data-offer-id') || "").toString();

    if (offerId && REDIRECTS[offerId]) {
      setTimeout(function () {
        window.top.location.href = REDIRECTS[offerId];
      }, 50);
    }

  });

});

Как добавить новый оффер:
"НОВЫЙ_ID": "https://ссылка"


2) CSS: порядок офферов + подмена цены

База (один раз)

.part-manyPositions { display: flex; flex-direction: column; }

.form-position .form-position-price.pull-right { position: relative; }
.form-position .form-position-price.pull-right::before{
  font-size:14px;font-weight:700;color:#111;line-height:1.2;font-family:inherit;visibility:visible;
}

Для каждого оффера (копируй блок и меняй значения)

/* ОФФЕР 7820040 */
.form-position[data-offer-id="7820040"] { order: 1; }
.form-position[data-offer-id="7820040"] .form-position-price.pull-right { visibility:hidden; font-size:0; }
.form-position[data-offer-id="7820040"] .form-position-price.pull-right::before { content:"2 × 110€"; }

/* ОФФЕР 1234567 */
.form-position[data-offer-id="1234567"] { order: 2; }
.form-position[data-offer-id="1234567"] .form-position-price.pull-right { visibility:hidden; font-size:0; }
.form-position[data-offer-id="1234567"] .form-position-price.pull-right::before { content:"199€ (o singura plata)"; }

Проверка

  • Порядок офферов меняется (через order)

  • Цена визуально подменена (content)

  • Редирект срабатывает только для офферов из REDIRECTS