Настройка виджетов офферов с редиректом и кастомной ценой
Что нужно
-
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
No Comments