Порой возникает необходимость предложить ученикам возможность оплаты любой суммы или попросту настроить донат — форму для приема взносов на Геткурс. Напрямую платформа не дает купить продукт за произвольную цену, но путем несложных настроек можно организовать этот функционал.
Настройка приема донатов на Геткурс
1. Создаем продукт с предложением стоимостью 1 рубль.
2. Добавим в настройках свое отображение в форме для предложения
3. Создаем форму/виджет оформления заказа, где в предложении выставляем следующие параметры:
4. У нас получается готовая форма, где клиент может вписать свою сумму.
По факту, вписывается не сумма, а количество. Но так как у нас стоимость предложения равна 1 рублю, то вписанное количество будет равно стоимости в рублях.
На этом можно и закончить, но мы с вами еще чуток «колданем» и уберем лишнее после поля ввода суммы. Заходим в настройки стиля блока с формой:
И добавляем css-код:
.form-position-price span { display: none; } .form-position-price:after { content:" руб."; } .offer-count-input { width: 90px; /* ширина поля ввода */ }
Вот такая теперь аккуратненькая форма у нас получилась:
Дополнение. Кнопки с предустановленными суммами.
Добавлю сюда еще одну вариацию в дополнение к обычной форме с донатами — возможность выбора суммы клиентом через клик по соответствующей кнопке. Выглядит это так:
Для начала необходимо создать дополнительное поле по заказам с типом «выбор». Здесь и будут предустановленные суммы.
Далее в нашей форме добавляем это поле и присваиваем ему класс «sum».
И остается вставить коды. Первый css — в настройки стилей блока, где уже ранее добавляли код для формы. Второй код — js — уже отдельным блоком ниже, под формой.
/* Стилизация доп поля с выбором суммы */ .sum .field-content .field-label, .form-position-checker input { display: none; } .sum .field-input-block div { display: flex !important; justify-content: center !important; } .sum .field-input-block label { cursor: pointer; min-height: 20px; width: 100%; padding: 15px auto; margin-right: 0.5%; margin-left: 0.5%; margin-bottom: 15px; border: 2px #ebb7b7 solid; /* ширина и цвет границы кнопки с суммой */ text-align: center; background-color: #fff; /* цвет кнопки с суммой */ color: #000; /* цвет шрифта кнопки с суммой */ transition: all 0.2s ease; border-radius: 20px; } .sum .field-input-block label input { display:none; } .sum .field-input-block label.bordered { background-color: #ff6600; /* цвет выбранной кнопки */ color: #fff; /* цвет шрифта выбранной кнопки */ }
$(document).ready(function(){ setTimeout(function() { $('.field-input-block label').click(function() { var text = parseInt($('.sum input[type="radio"]:checked').closest('label').text()); $('.field-input-block label').removeClass('bordered'); $(this).addClass('bordered'); $(function(){ $(".offer-count-input").val(text); }); }); }, 50); });
Спасибо, большое за решение, а как можно увеличить окошко для суммы? А то шаг в 10000 р. не очень смотрится 🙈
Обновил код в статье
Спасибо. Схоронил!
Очень круто, а можно ли убрать стрелочки в окошке ввода?
добавьте в код
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}
/* Firefox */
input[type=number] {
-moz-appearance:textfield;
}
Благодарю! Прямо находка!
Спасибо за подробную инструкцию! Очень полезно оказалась и сделала без проблем!
Очень крутая штука спасибо большое. Скажите а может есть возможность например выбрать и предустановить в окне ввода сразу сумму 100 а далее уже выбирать
да, в настройках предложения на этой форме есть внутри «количество по умолчанию»
Спасибо огромное за статью!
Огромная Вам БЛАГОДАРНОСТЬ за статью. Очень здорово и кстати!
Вопросик правда остался — не получается расположить кнопки выбора суммы рядом, остаются одна под одной. Не пойму, где могла ошибиться?((
Пожалуйста
А кнопки в колонку в режиме редактирования или просмотра? В редактировании они и будут друг под другом
И в просмотре тоже в колонку
А куда вставлять код js?
в геткурсе есть специальный блок для скрипта, вот этот код в него нужно вставить. Только сам блок должен быть ниже формы обязательно
Благодарю за статью! Все получилось по инструкции)
Спасибо Вам огромное!
Подскажите, а есть ли возможность установить минимальную сумму, например 200 руб. и чтобы меньше этой суммы нельзя было ввести значение?
Как вариант вы можете в настройках формы задать количество 200 и на форме сразу эта сумма будет вбита. Но меньше ученик сможет выставить. Запретить это стандартными средствами нельзя, только прибегать к написанию скрипта.
Спасибо! Только не вижу, где этот блок для скрипта в форме?
Блок для скрипта добавляется отдельным блоком под формой, не внутри формы
Здравствуйте! А в продамусе такую штуку можно сделать?
Добрый день, да, но данная функция пока в закрытом тестировании. Туда попасть можно через запрос в техподдержку Продамуса
Спасибо за статью 🔥
Спасибо огромное за статью!!!!
Василий, огромное спасибо за инструкцию. Все получилось, но не могу сделать последний шаг – добавить блок для скрипта под формой. Скажите пожалуйста, как это сделать? Куда нажать?
Заранее большое спасибо!
Там нужно добавить блок «javascript-код», он находится в разделе «вставка». И уже в него вставить код из статьи.
Спасибо! В форме создания виджета у меня почему-то не было возможности выбрать такой блок, но я скопипастил его из формы создания страницы.
ЕЕще один вопрос — при нажатии на какую-либо сумму на кнопке она не отображается в окошке ввода суммы. Скажите пожалуйста, в чем может быть ошибка?
Спасибо большое заранее за ответ