Как сделать так, чтобы 3scale sigle подписывался на страницу плана?

Я хочу перенаправить пользователя непосредственно на страницу планирования подписки с выбранным планом, так как я могу это сделать.

Если вы можете сказать мне, как прочитать идентификатор плана параметров из sso, он также поможет.

1 ответ

Чтобы прочитать идентификатор плана, вы можете использовать следующую метку Liquid: {{ plan | to_param }} когда у вас уже есть доступ к атрибуту плана из объекта Application. Это используется, если вы регистрируетесь прямо со страницы подписки на план. В качестве альтернативы вы можете использовать application[plan_id]={{plan.id}} если вы просто хотите сохранить идентификатор плана в параметрах запроса при перенаправлении.

Если вы хотите получить идентификатор плана со своего внешнего сайта, вам нужно будет использовать API 3scale для извлечения этих данных, чтобы plan.system_name или же plan.id может быть передано в редиректе на 3scale Developer Portal. Точно так же, если эти планы довольно статичны, вы можете просто жестко закодировать их в HTML.

Когда пользователь попадает на страницу портала разработчика, должна быть какая-то пользовательская жидкость, которая считывает параметры запроса и затем фильтрует доступные планы:

{% assign params = request.request_uri | split: 'plan_id=' %}
{% param = params[1] %}

{% for service in provider.services %}
 {% for plan in service.application_plan %}
 {% case plan.id %}
 {% when param %}

Some HTML here that renders the subscription form to that plan.

 {% endcase %}
 {% endfor %}
{% endfor %}

Жидкость очень гибкая, поэтому есть много способов сделать то же самое.

Проверьте Справочную документацию Liquid для получения дополнительной информации о Плане подачи заявления.

Другие вопросы по тегам