2017-01-18 1 views

ответ

1

Существует не конфигурация установки для достижения этой цели. Таким образом, самый простой подход - создать переопределение шаблона для просмотра пользователями.

В администраторе откройте меню Extensions-шаблоны-шаблоны, затем выберите шаблон и выберите «Создать Overrides» в верхней вкладке: Joomla override page

В центральной колонке, выберите com_users - профиль и редактировать. php override code

Отображение выполняется с помощью цикла, начиная с строки 59 (по версии 3.6.5), вы хотите добавить код, чтобы идентифицировать поля, которые вы хотите сохранить только для чтения, и просто установите их свойство readonly.

Это своего рода код, который вы бы добавить, начиная с линии 59:

<?php foreach ($fields as $field) : ?> 
     <?php 
      if ($field->name == 'jform[name]') { 
       $field->readonly = true; 
      } 
     ?> 
     <?php // If the field is hidden, just display the input. ?> 

в $ поле содержит что-то вроде этого: enter image description here

Мы идентифицирующий его по имени (а его поле name), а затем установите его свойство readonly.

1

Лучший подход, но не самый простой, чтобы создать плагин пользователя, чтобы переопределить форму с onContentPrepareForm способом:

public function onContentPrepareForm($form, $data){ 

    if (!($form instanceof JForm)){ 
     $this->_subject->setError('JERROR_NOT_A_FORM'); 
     return false; 
    } 

    $form->setFieldAttribute('name', 'readonly', 'true'); 
    $form->setFieldAttribute('lastname', 'readonly', 'true'); 

    return true; 

} 
Смежные вопросы