template - Drupal 7: ¿Plantilla para la página de registro de usuario?
tema bootstrap drupal 8 (5)
¿Cómo crearía una plantilla para la página de registro de usuario? Quiero tema toda la página, no solo el formulario. Probé la page--user-register.tpl.php
pero eso no funciona.
Drupal de fábrica no proporciona ninguna sugerencia de plantilla para el formulario de registro. Tendrá que escribir un módulo personalizado para agregarlo. Puedes hacer algo como esto:
/**
* Implements hook_theme().
*/
function mymodule_theme() {
$items = array(
''user_register_form'' => array(
''render element'' => ''form'',
''template'' => ''templates/user-register-form'',
),
);
return $items;
}
Luego, tendrías una plantilla en mymodule / templates llamada user-register-form.tpl.php que puedes personalizar o sobrescribir en tu tema.
Recomiendo usar el módulo desarrollador de temas
Le mostrará todas las sugerencias de plantilla para una página determinada y cómo llamarlas. También asegúrate de borrar tu caché.
También este es un gran recurso
Otra forma será usar "Panel" para crear la página de registro de custon:
- Instalar y habilitar el módulo del panel
- Crear una nueva página "página de registro" y diseñar el diseño
- Agrega contenido a tus regiones. Para su caso, el "bloque de registro" o el "bloque de inicio de sesión"
Desea usar page--user--register.tpl.php
lugar de page--user-register.tpl.php
.
page--user-register.tpl.php
cambia la plantilla para la página user-register
, mientras que page--user--register.tpl.php
cambia la plantilla para la página user/register
.
Drupal 7
Agregue este código a su template.php en su directorio de temas.
function yourtheme_theme() {
return array(
''user_login'' => array(
''template'' => ''user-login'',
''arguments'' => array(''form'' => NULL),
),
);
}
function yourtheme_theme() {
$items = array();
$items[''user_login''] = array(
''render element'' => ''form'',
''path'' => drupal_get_path(''theme'', ''yourtheme'') . ''/templates'',
''template'' => ''user-login'',
''preprocess functions'' => array(
''yourtheme_preprocess_user_login''
),
);
return $items;
}
function yourtheme_preprocess_user_login(&$vars) {
$vars[''intro_text''] = t(''This is my awesome login form'');
}
Cree un archivo en la carpeta de "plantillas" de su tema llamada user-login.tpl.php.
Agregue este código y cambie "yourtheme" al nombre de su tema.
<?php print drupal_render_children($form) ?>
Limpia tu caché.
Fuente (donde puede encontrar detalles sobre cómo hacer esto para user-register-form, user-password-form, y Drupal 6) https://drupal.org/node/350634