joomla joomla1.7 joomla1.6 joomla-template joomla2.5

Anular componentes/com_users/models/forms/login.xml-Joomla 2.5?



joomla1.7 joomla1.6 (3)

He intentado anular el archivo login.xml pero no importa lo que intento, la versión editada de mi carpeta de plantillas no aparece. ¿Cómo puedo anular este archivo?

Actualizar

He intentado template/<templatename>/html/com_users/models/login.xml y otras variaciones como template/<templatename>/html/com_users/models/forms/login.xml o template/<templatename>/html/com_users/forms/login.xml etc. sin ningún éxito.


Aquí hay una solución:

http://forum.joomla.org/viewtopic.php?t=583380#p2375649

Acabo de probarlo en Joomla 2.5.3 y funciona.

Actualizar

aquí está la solución copiada de la URL anterior

Podemos anular la salida mediante el uso de la función de anulación de plantilla normal. Para mí, intento anular la página de inicio de sesión. Por lo tanto, tomo una copia de /templates/beez_20/html/com_users/login en /templates/beez_20/html/com_users/login .

Ahora tome una copia de /components/com_users/models/forms/login.xml y colóquela en /templates/beez_20/html/com_users/login también.

Luego edite /templates/beez_20/html/com_users/login/default.php y agregue en la parte superior del formulario (agregué el mío justo después de la etiqueta del formulario) las siguientes líneas de código:

// to reset the form xml loaded by the view $this->form->reset( true ); // to load in our own version of login.xml $this->form->loadFile( dirname(__FILE__) . DS . "login.xml");

Del mismo modo, puede editar /templates/beez_20/html/com_users/registration/registration.xml forma /templates/beez_20/html/com_users/registration/registration.xml para modificar el formulario de registro.


Pude aprovechar la solución de Griiettner para Joomla 3. No quería permitir que los usuarios editen su dirección de correo electrónico en la pantalla de edición de perfil en la interfaz. Solo lo modifiqué un poco, copié este archivo:

components/com_users/models/forms/profile.xml

a:

/templates/YOUR_TEMPLATE/html/com_users/profile/forms/profile.xml

También copie este archivo:

components/com_users/views/profile/tmpl/edit.php

a:

/templates/YOUR_TEMPLATE/html/com_users/profile/edit.php

Y coloque este código en la parte superior del archivo edit.php justo después de:

defined(''_JEXEC'') or die;

Dejé fuera el $this->form->reset( true ); // to reset the form xml loaded by the view $this->form->reset( true ); // to reset the form xml loaded by the view y solo lo usamos:

// JOOMLA 3 if(!defined(''DS'')) define(''DS'', DIRECTORY_SEPARATOR); $this->form->loadFile( dirname(__FILE__) . DS . "forms" . DS . "profile.xml");

Esto me permitió mantener la información del perfil del usuario llena en el formulario de edición. Luego edité el archivo profile.xml y agregué:

readonly="true"

a los campos email1 y email2. Esto evita que el usuario edite.


La respuesta publicada en el foro es que @Shaz definitivamente funciona, pero para Joomla 3.X tienes que ajustar un poco, así que sería

Primero que nada, copia

/components/com_users/models/forms/login.xml

A

/templates/YOUR_TEMPLATE/html/com_users/login/forms/login.xml

Y coloque este fragmento de código en la parte superior

if(!defined(''DS'')) define(''DS'', DIRECTORY_SEPARATOR); $this->form->reset( true ); // to reset the form xml loaded by the view $this->form->loadFile( dirname(__FILE__) . DS . "forms" . DS . "login.xml"); // to load in our own version of login.xml

Esto hizo que el tictac para mí fuera un reconocimiento para el usuario @dylanjh que publicó la respuesta original en el foro de Joomla.