Комментарии

Изменение внешнего вида компонента регистрации пользователя
( 1 Проголосовало )

Компоновки компонентов можно изменять таким же образом, как и компоновки модулей. Допустим, нам требуется изменить компоновку компонента для регистрации пользователя в пользовательской части веб-сайта, чтобы включить в нее соглашение, которое пользователь должен принять перед тем, как зарегистрироваться на веб-сайте.

Наша первая задача — найти файл компоновки данного компонента и скопировать его в соответствующую подпапку папки шаблона beez_20_copy. Регистрация пользователя пользовательской части веб-сайта происходит в компоненте com_users, а его компоновка находится в папке components/com_users/views/registration/tmpl, где хранятся четыре файла. Так, в файле default .php содержится форма регистрации пользователя, а в файле complete.php — компоновка экрана, который появляется по завершении регистрации.

Структура папок для хранения замещений компоновок компонентов аналогична структуре папок, создаваемой для хранения замещений компоновок модулей. Следовательно, нам требуется создать подпапку templates/beez_20_copy/html/<имя_компонента>/<имя_представления>. В рассматриваемом здесь примере это будет подпапка beez_20_copy/html/com_users/registration. Далее мы должны скопировать файл default.php из исходной папки components в новую папку. В итоге мы получим структуру папок.

Как пояснялось ранее в отношении модулей, файлы замещения их компоновки располагаются в подпапке с именем конкретного модуля. А с компонентами дело обстоит немного сложнее. У них, как правило, имеется несколько представлений с собственными исходными компоновками. Поэтому нам придется сначала создать подпапку для каждого представления в папке компонента, а затем разместить в ней файлы замещений компоновок. А кроме того, нужно не забыть скопировать пустые файлы index.html в папки с замещениями компоновок, чтобы не дать посторонним лицам просматривать их.

Далее нам нужно убедиться в том, что выполняется файл замещенной, а не стандартной компоновки. Для этого мы можем снова добавить некоторый текст в файл замещения компоновки и проверить, что он отображается именно так, как и предполагалось. С этой целью в код, добавлен элемент разметки hi с заголовком Му User Registration Override (Мое замещение компоновки регистрации пользователя); соответствующая строка кода выделена полужирным.
Если выбрать из меню команду Home => Create an Account (Домой => Создать учетную запись), при условии, что в Joomla установлены выборочные данные, то загрузится форма регистрации пользователя. И если наш шаблон beez_20_copy определен как выбираемый по умолчанию, то видоизмененный нами файл компоновки отобразит результат.

А теперь, когда мы убедились, что все установлено правильно, можно приступать к специальной настройке файла замещения компоновки. Как упоминалось выше, в данном примере нам требуется, чтобы пользователь принял предлагаемое ему соглашение, прежде чем зарегистрироваться. Если проанализировать код в файле компоновки, то в самом его конце можно заметить определение кнопки Register (Зарегистрироваться), выделенное полужирным в листинге.

Нам нужно ввести в компоновку регистрационной формы флажок принятия соглашения перед кодом определения кнопки Register, выделенным полужирным в листинге

В приведенном ранее фрагменте кода мы ввели стандартный элемент fieldset разметки HTML-документа с пояснительной надписью и флажком. Но у обновленной регистрационной формы имеются следующие ограничения.

  • От пользователя не требуется устанавливать флажок принятия условий обслуживания перед регистрацией.
  • Пояснительный текст к флажку жестко закодирован на английском языке и не переводится при локализации веб-сайта на другие языки мира.

Далее в статьях мы представим подключаемый модуль, проверяющий, установлен ли флажок принятия условий обслуживания. А далее в этой главе мы добавим замещение файла языковой поддержки и видоизменим регистрационную форму таким образом, чтобы весь ее текст можно было перевести на другие языки мира.


Понравился материал? Пригодилась информация? Плюсани в социалки!


 
Похожие новости
Добавить комментарий


Защитный код