Многоступенчатая регистрационная форма в Drupal 7 с видео в качестве шага с использованием ajax

#ajax #drupal

#ajax #drupal

Вопрос:

Я довольно новичок в Drupal, но я разрабатываю на PHP уже около 8 лет. Я пытался сделать это с помощью модулей пользовательского интерфейса администратора, но в значительной степени столкнулся с кирпичной стеной!

  1. Я хочу создать целевую страницу ie example.com/username (Анонимный пользователь получает это из предоставленной литературы).

  2. Пользователь заполняет свои данные на шаге 1

  3. Пользователь оставляет отзыв на шаге 2

  4. Пользователь просматривает короткое видео на шаге 3, прежде чем сможет нажать кнопку Далее

  5. Пользователь заполняет другое поле на шаге 4 и нажимает готово

Когда все это будет сделано, я хочу, чтобы пользователь был зарегистрирован на сайте Drupal (чтобы ему не пришлось снова выполнять шаг 1). Я знаю, что мне пришлось бы написать модуль для этого, но прошу здесь посмотреть, знает ли кто-нибудь, что это можно сделать с Drupal 7, прежде чем я перейду к коду.

Заранее спасибо! 🙂

Комментарии:

1. Просто чтобы уточнить, хотите ли вы заставить пользователя просмотреть видео до того, как ему будет разрешено продолжить, или просто предположите, что он его просмотрел, и укажите кнопку «далее»?

2. Привет, Клайв, спасибо за ответ. Да, пользователь должен просмотреть видео, прежде чем продолжить.

3. Я думаю, что это будет вашим камнем преткновения, все остальное довольно просто с использованием Drupal. У вас есть идея, как вы могли бы обеспечить такую вещь, просто используя стандартный PHP / HTML / Javascript? Я рисую немного пробел

4. Да, я делал это через jQuery на обычном PHP-сайте раньше. Только что сделал обратный отсчет. Есть и другие способы сделать это из видео, отправив сообщение на страницу, когда оно будет завершено. Я изучал Drupal последние несколько недель, и, похоже, он способен делать все, что мне нужно для сайта, поэтому хотел бы пойти по этому пути.

5. Хороший материал, это определенно возможно, я опубликую некоторую информацию в ответе, вероятно, в комментарии будет слишком много

Ответ №1:

По счастливой случайности я только что наткнулся на этот пост на Drupal.org в которой кто-то прошел весь процесс преобразования регистрационной формы Drupal 7 в многоступенчатую, так что это было бы отличным началом (они даже опубликовали много кода, который вам понадобится).

Основной принцип заключается в реализации hook_form_user_register_form_alter в вашем модуле и преобразовании формы в многоступенчатую. Затем одним из ваших шагов будет показ видео и реализация jQuery, как вы упомянули в своем комментарии. Я не буду вдаваться в подробности, поскольку это было бы просто повторением того, что указано в ссылке выше, но также ознакомьтесь с документацией Form API, это поможет при этом.

Кстати, если вы новичок в программировании в Drupal, возьмите модуль Examples, это очень ценный ресурс.

Надеюсь, это поможет

Комментарии:

1. Не могу поверить, что я никогда не сталкивался с этим Clive! Будет отличным местом для начала… Большое спасибо, приятель !! : D