Я был в состоянии использовать решение Griiettner для Joomla 3. Я хотел, чтобы не позволить пользователям редактировать свою электронную почту адрес на экране редактирования профиля на интерфейсе.Я только ее немного модифицировал, скопируйте этот файл:
components/com_users/models/forms/profile.xml
к:
/templates/YOUR_TEMPLATE/html/com_users/profile/forms/profile.xml
скопировать Также этот файл:
components/com_users/views/profile/tmpl/edit.php
к:
/templates/YOUR_TEMPLATE/html/com_users/profile/edit.php
И поместить этот код в начало файла edit.php сразу после:
defined('_JEXEC') or die;
Я ушел из $this->form->reset(true); // to reset the form xml loaded by the view
и используется только это:
// JOOMLA 3 if(!defined('DS')) define('DS', DIRECTORY_SEPARATOR); $this->form->loadFile(dirname(__FILE__) . DS . "forms" . DS . "profile.xml");
Это позволило мне сохранить информацию о профиле пользователя, заполненную в форме редактирования. Затем я редактировал файл profile.xml и добавил:
readonly="true"
к EMAIL1 и EMAIL2 полей. Это не позволяет пользователю редактировать.
Привет, спасибо за ваш ответ. Я пробовал шаблон/templatename/html/com_users/models/login.xml и другие варианты, такие как template/templatename/html/com_users/models/forms/login.xml или template/templatename/html/com_users/forms/login.xml и т. Д. ... – theoth