Resumen de IA
Si tienes un sitio de membresía, una tienda en línea o cualquier sitio donde la gente inicie sesión, probablemente te habrás dado cuenta de lo poco útil que es el inicio de sesión predeterminado de WordPress.
Después de que alguien se registra o inicia sesión, WordPress lo envía al panel de administración o a una pantalla de perfil genérica, que suele ser el último lugar al que quieres que aterricen tus usuarios.
He configurado mi parte de flujos de registro e inicio de sesión a lo largo de los años, y el enfoque que mantiene las cosas simples es crear tus propios formularios y enviar a las personas exactamente a donde quieres después.
En esta guía, crearás formularios de inicio de sesión y registro personalizados con WPForms y luego agregarás redirecciones para que los usuarios vayan directamente a una página de bienvenida, un panel de cuenta o cualquier página que elijas.
Cómo redirigir a los usuarios después del inicio de sesión y el registro en WordPress
Comenzaremos creando los formularios, luego repasaremos todas las formas de redirigir a tus visitantes una vez que inicien sesión o se registren. También te mostraré cómo
- ¿Por qué redirigir a los usuarios después de iniciar sesión o registrarse?
- Paso 1: Instala el plugin WPForms Pro
- Paso 2: Instalar el complemento de registro de usuarios
- Paso 3: Crear tu formulario de registro
- Paso 4: Configurar los ajustes de tu formulario de registro
- Paso 5: Crear un formulario de inicio de sesión
- Paso 6: Incrustar tus formularios de inicio de sesión y registro
- Paso 7: Redirigir a los usuarios después de que inicien sesión o se registren
- Paso 8: Redirigir las páginas de inicio de sesión y registro predeterminadas de WordPress (opcional)
- Solución de problemas de redirecciones de inicio de sesión y registro
¿Por qué redirigir a los usuarios después de iniciar sesión o registrarse?
Por defecto, WordPress trata a todas las cuentas de la misma manera. Ya sea que alguien sea un cliente de pago, un estudiante de un curso o un miembro de la comunidad, al iniciar sesión se le envía a /wp-admin, y la pantalla de registro es el formulario simple y sin marca que viene con WordPress.


Eso está bien para los administradores del sitio, pero es confuso para todos los demás. Un cliente que acaba de crear una cuenta no quiere ver el back-end de WordPress. Configurar una redirección soluciona eso de varias maneras:
- Mantén a los usuarios fuera del back-end: Envía a los clientes y miembros a una página del front-end en lugar del área de administración que no tienen ninguna razón para ver.
- Dirige a las personas a lo que importa: Envía a los nuevos registrados a una página de bienvenida o de incorporación, y a los usuarios que regresan a su panel de cuenta.
- Coincide con tu marca: Reemplaza las pantallas genéricas de inicio de sesión y registro de WordPress con formularios que se parezcan al resto de tu sitio.
WordPress tiene una redirección de inicio de sesión incorporada, pero solo se aplica a la pantalla de inicio de sesión predeterminada, y cambiarla generalmente significa editar código.
En el momento en que usas tu propio formulario de inicio de sesión, obtienes una configuración de redirección simple en su lugar, y esa es la ruta que tomaremos aquí.
Paso 1: Instala el plugin WPForms Pro
La forma más fácil de crear formularios de inicio de sesión y registro personalizados es con WPForms, el constructor de formularios de WordPress más fácil de usar para principiantes del mercado. Viene con más de 2100 plantillas de formularios, incluidas plantillas de formularios de registro listas para usar que puedes configurar en minutos.
Lo que más me gusta de WPForms para este trabajo es que la redirección vive dentro del propio formulario. Una vez que creas un formulario de inicio de sesión o registro, elegir a dónde van los usuarios después es una configuración única, por lo que no hay que adivinar ni pegar nada en tu tema.
Los formularios de inicio de sesión y registro funcionan con el complemento User Registration, y ese complemento está disponible en la licencia WPForms Pro y superiores. Maneja formularios de registro, inicio de sesión y restablecimiento de contraseña, y te permite asignar roles de usuario y requerir activación por correo electrónico también.


Para empezar, compra la licencia Pro. Luego instala WPForms en tu sitio web. Si necesitas ayuda, sigue estas instrucciones sobre cómo añadir un plugin a WordPress.
¡Actualiza a WPForms Pro ahora!
Paso 2: Instalar el complemento de registro de usuarios
Con WPForms activo, lo siguiente que debes hacer es instalar el complemento que potencia tus formularios. Desde tu área de administración de WordPress, ve a WPForms » Complementos.


Busca Registro de usuario en la barra de búsqueda y, a continuación, haz clic en Instalar complemento debajo de ella. El complemento se instala en unos segundos y se activa solo, por lo que estarás listo para crear tu primer formulario de inmediato.


Paso 3: Crear tu formulario de registro
Ahora ve a WPForms » Añadir nuevo para abrir el creador de formularios y ponle un nombre a tu formulario que reconozcas más tarde.


Desplázate por la biblioteca de plantillas y elige la plantilla Formulario de registro de usuario.


WPForms crea un formulario de registro completo para ti, con todos los campos que un nuevo usuario necesita ya en su lugar.


Cada plantilla es totalmente personalizable, por lo que puedes arrastrar campos adicionales o eliminar los que no necesites, como la biografía corta.
Si quieres profundizar en las opciones de campos, nuestra guía sobre cómo crear un formulario de registro de usuario cubre más de lo que es posible. Por ahora, vamos a configurar los ajustes del formulario.
Paso 4: Configurar los ajustes de tu formulario de registro
Aquí es donde decides cómo se registran las personas y qué sucede con sus cuentas después. Haz clic en Ajustes » Registro de usuario dentro del creador de formularios.


La primera sección, Asignación de campos, es donde asignas cada campo del formulario al detalle correspondiente en la cuenta de WordPress del usuario, como nombre de usuario, correo electrónico y contraseña.


Desplázate hacia abajo hasta la sección Roles de usuario. Aquí eliges el rol y el nivel de acceso que obtienen los nuevos registros. Para una cuenta típica de suscriptor, elige Suscriptor en el menú desplegable.


Justo debajo está Activación de usuario e inicio de sesión. Está desactivado por defecto, lo que significa que las cuentas se activan en el momento en que alguien envía el formulario. Yo lo activaría, ya que requerir la activación reduce los registros de spam y te da más control sobre quién entra.


Activa Habilitar activación de usuario y aparecerá un menú desplegable para el método de activación. Aprobación manual significa que apruebas cada cuenta tú mismo, mientras que Correo electrónico del usuario envía al nuevo usuario un mensaje con un enlace de activación.


Si eliges Correo electrónico del usuario, obtendrás opciones adicionales para personalizar ese mensaje. Edita lo que quieras, pero mantén la etiqueta inteligente {url_user_activation} en su lugar, porque ese es el enlace en el que las personas hacen clic para activar su cuenta.


También puedes elegir la página a la que los usuarios son dirigidos después de hacer clic en el enlace de activación. Elige una página de confirmación adecuada del menú desplegable.


¿Quieres que las personas inicien sesión automáticamente una vez que su cuenta se haya creado? Activa el interruptor Habilitar inicio de sesión automático y WPForms los inicia sesión tan pronto como se registran.


Cerca de la parte inferior encontrarás la sección Notificaciones por correo electrónico. Usa los interruptores para controlar qué correos electrónicos van a ti y al usuario, y haz clic en Editar plantilla junto a cualquiera de ellos para cambiar el texto.


Una vez que todo parezca correcto, haz clic en Guardar en la esquina superior derecha.


Paso 5: Crear un formulario de inicio de sesión
Con el formulario de registro listo, necesitas un formulario de inicio de sesión para las personas que regresan. Ve a WPForms » Añadir nuevo de nuevo, y esta vez elige la plantilla Formulario de inicio de sesión de usuario.


Es un formulario sencillo con campos de nombre de usuario y contraseña, además de una opción Recordarme que agiliza los futuros inicios de sesión para sus usuarios.


Para ajustar el comportamiento del formulario, abra Ajustes » Registro de usuarios para el formulario de inicio de sesión.


Aquí puede optar por ocultar el formulario a las personas que ya han iniciado sesión y mostrarles un mensaje en su lugar. Simplemente active el interruptor junto a Ocultar formulario si el usuario ha iniciado sesión y, a continuación, Guarde el formulario.


Paso 6: Incrustar tus formularios de inicio de sesión y registro
Sus formularios están listos, así que ahora los colocará en páginas reales. WPForms agiliza esta parte. Haga clic en el botón Incrustar en la esquina superior derecha del creador de formularios.


Elija Crear página nueva, ya que publicará páginas de inicio de sesión y registro nuevas que podrá utilizar más adelante en lugar de las predeterminadas de WordPress.


Asigne un nombre a la página y haga clic en Empezar.


Su formulario se inserta directamente en el contenido de la página. Haga clic en Publicar para que esté en línea.


Su página de registro ya está en línea y notará que utiliza el estilo de su tema y sus campos personalizados en lugar de la página rígida predeterminada de WordPress.
Repita los mismos pasos de incrustación para su formulario de inicio de sesión, de modo que ambas páginas estén listas. Si prefiere colocar los formularios dentro de una página o área de widget existente, aquí le mostramos cómo mostrar formularios de inicio de sesión y registro en cualquier página.


Paso 7: Redirigir a los usuarios después de que inicien sesión o se registren
Para enviar a los usuarios a un lugar específico después de que envíen un formulario de inicio de sesión o registro, edite el formulario, abra Ajustes » Confirmaciones y establezca el tipo de confirmación en Mostrar página o Ir a URL.


Comience editando el formulario al que desea agregar una redirección. Luego, diríjase a la pestaña Confirmaciones en la configuración de su formulario.


Por defecto, WPForms muestra un mensaje de confirmación después del envío.
Cambie el Tipo de confirmación a Mostrar página y elija cualquier página de su sitio, o seleccione Ir a URL y pegue un enlace personalizado.
A partir de ahora, cualquiera que envíe el formulario será redirigido allí en lugar de ver un mensaje.


La misma configuración funciona para ambos formularios y los configura de forma independiente. Así, su formulario de registro puede enviar a los usuarios nuevos a una página de bienvenida o de incorporación, mientras que su formulario de inicio de sesión envía a los usuarios recurrentes directamente a su panel de cuenta.
Si alguna vez necesita redirigir después de un formulario de contacto u pedido normal, el proceso es el mismo y puede leer más en nuestra guía sobre cómo redirigir a los usuarios después de enviar un formulario.
Paso 8: Redirigir las páginas de inicio de sesión y registro predeterminadas de WordPress (opcional)
En este punto, sus páginas personalizadas están en línea, pero los visitantes aún pueden acceder a las pantallas antiguas de WordPress directamente a través de estas URL:
- Página de registro:
https://example.com/wp-login.php?action=register - Página de inicio de sesión:
https://example.com/wp-login.php
Si desea que esas URL predeterminadas redirijan a sus nuevas páginas, puede agregar un pequeño fragmento de código. Recomiendo hacerlo con el plugin gratuito WPCode en lugar de editar directamente el archivo functions.php de su tema, ya que WPCode le permite agregar fragmentos de forma segura sin arriesgar su sitio si algo sale mal.
Para la página de registro, agregue este fragmento y reemplace /registration-url por el slug de su nueva página de registro:
// Redirect the default WordPress registration page
function my_registration_page_redirect() {
global $pagenow;
if ( strtolower( $pagenow ) == 'wp-login.php' && isset( $_GET['action'] ) && strtolower( $_GET['action'] ) == 'register' ) {
wp_redirect( home_url( '/registration-url' ) );
exit;
}
}
add_action( 'init', 'my_registration_page_redirect' );
Para la página de inicio de sesión, agregue este fragmento y reemplace /login-url por el slug de su página de inicio de sesión personalizada:
// Redirect the default WordPress login page
function my_login_page_redirect() {
$login_page = home_url( '/login-url' );
$page_viewed = basename( $_SERVER['REQUEST_URI'] );
if ( $page_viewed == 'wp-login.php' && $_SERVER['REQUEST_METHOD'] == 'GET' ) {
wp_redirect( $login_page );
exit;
}
}
add_action( 'init', 'my_login_page_redirect' );
La línea exit; es importante aquí. Sin ella, algunas configuraciones (especialmente multisitio) aún pueden dirigir a los usuarios a la pantalla predeterminada wp-signup.php. Con estos fragmentos implementados, sus páginas personalizadas de inicio de sesión y registro reemplazan completamente los valores predeterminados de WordPress.
Solución de problemas de redirecciones de inicio de sesión y registro
Si su página de inicio de sesión se actualiza continuamente o lo devuelve al formulario en lugar de redirigirlo, casi siempre se trata de un problema de caché del navegador o de cookies. Borre su caché y cookies, y luego pruebe de nuevo en una ventana privada.
Si la redirección no se activa en absoluto, abra la configuración de Confirmaciones del formulario y confirme que el tipo esté configurado como Mostrar página o Ir a URL, no como mensaje predeterminado.
Si activa Habilitar inicio de sesión automático y sus entradas o correos electrónicos de notificación dejan de llegar, pruebe el formulario con el inicio de sesión automático desactivado para confirmar que esa es la causa. Cuando lo sea, una solución de entregabilidad como WP Mail SMTP generalmente soluciona el problema del correo electrónico.
Preguntas frecuentes sobre redirecciones de inicio de sesión y registro en WordPress
La configuración de una redirección de formulario de inicio de sesión en WordPress plantea algunas preguntas comunes, especialmente en torno a los roles de usuario y las opciones sin código. Aquí tiene respuestas rápidas antes de crear sus propias redirecciones de inicio de sesión y registro.
¿Puedo redirigir a los usuarios a diferentes páginas según su rol?
Una redirección de confirmación de WPForms envía a todos los que envían ese formulario al mismo destino. Si desea páginas diferentes para roles diferentes, el enfoque más sencillo de WPForms es usar un formulario separado para cada rol, cada uno con su propia redirección. Para la ramificación por roles en el inicio de sesión predeterminado, usaría el método de código opcional en el Paso 8 con el filtro login_redirect de WordPress.
¿Puedo configurar redirecciones de inicio de sesión sin escribir ningún código?
Sí. Los pasos del 1 al 7 no requieren código. Crea los formularios y luego configura la redirección en la configuración de Confirmaciones de cada formulario.
La única parte que involucra código es el Paso 8, que es opcional y solo se necesita si desea redirigir las URL predeterminadas de inicio de sesión y registro de WordPress.
¿Una página de inicio de sesión personalizada redirigirá a los usuarios como lo hace la página de inicio de sesión predeterminada de WordPress?
En realidad, le da más control. La redirección de inicio de sesión predeterminada de WordPress es limitada y generalmente necesita código para cambiar. Una página de inicio de sesión de WPForms le permite elegir el destino desde una configuración, y puede colocar esa página en cualquier página que desee.
¿Cómo redirijo la página de inicio de sesión predeterminada de WordPress a la mía personalizada?
Agregue el fragmento de redirección de inicio de sesión del Paso 8 usando el plugin gratuito WPCode y reemplace el slug de marcador de posición con su página de inicio de sesión personalizada. Después de eso, cualquiera que visite wp-login.php aterrizará en su página de inicio de sesión de marca en su lugar.
A continuación, personalice su página de inicio de sesión de WordPress
Ahora que sus redirecciones funcionan, vale la pena darle a su experiencia de inicio de sesión el mismo acabado que al resto de su sitio.
Nuestra guía sobre cómo crear un formulario de inicio de sesión personalizado para una mejor marca del sitio repasa el lado del diseño, y si desea comparar sus opciones, eche un vistazo a los mejores plugins de página de inicio de sesión de WordPress.
Crea Tus Formularios de Inicio de Sesión y Registro Ahora
¿Listo para crear tu formulario? Empieza hoy mismo con el plugin de creación de formularios de WordPress más fácil. WPForms Pro incluye muchas plantillas gratuitas y ofrece una garantía de devolución de dinero de 14 días.
Si este artículo te ha sido útil, síguenos en Facebook y Twitter para obtener más tutoriales y guías gratuitas de WordPress.



La redirección de /wp-login?action=register funciona muy bien al usar este código, pero ¿cómo podría hacer lo mismo para las páginas /login y /wp-login.php?
Intenté hacerlo con este código, pero realmente no tengo idea de lo que estoy haciendo. Básicamente solo estoy adivinando aquí.
// Redirigir página de inicio de sesión
function my_login_page_redirect()
{
global $pagenow;
if ( ( strtolower($pagenow) == ‘wp-login.php’) && ( strtolower( $_GET[‘action’]) == ‘login’ ) ) { wp_redirect( home_url(‘/my-account’)); } }
add_filter( ‘init’, ‘my_login_page_redirect’ );
Hola John,
Gran pregunta. De hecho, hemos compartido el código que necesitarías para esto en nuestro tutorial de página de inicio de sesión personalizada (por favor, consulta el punto #2 en ese artículo).
¡Espero que esto ayude! 🙂
Hola,
¿Es posible redirigir al usuario a una ubicación específica según el botón en el que acaba de hacer clic para registrarse/iniciar sesión?
Eso significa que cada botón diferente estaría vinculado a un formulario de registro/inicio de sesión diferente, cada uno redirigiendo a una dirección específica.
¿Sería posible?
Gracias de antemano
Hola Sowx,
Me temo que no estoy 100% seguro de tu pregunta, pero sí, puedes vincular botones en tu sitio web a diferentes formularios y luego, una vez que esos formularios se envíen, hacer que redirijan al usuario a una URL diferente. Si necesitas más información sobre cómo redirigir a un usuario al enviar un formulario, ¡consulta nuestra guía!
¡Espero que esto ayude!
Hola, el inicio de sesión automático y la redirección funcionan muy bien, pero por alguna razón no estoy recibiendo los correos electrónicos de notificación. (los usuarios tampoco están disponibles en la sección de entradas)
y cuando deshabilito el inicio de sesión automático, vuelve a funcionar.
Hola Kami,
Lamento escuchar que tienes problemas con la entrega de notificaciones por correo electrónico. Te recomiendo que consultes nuestro artículo que te muestra cómo solucionar este problema usando el plugin WP Mail SMTP.
¡Espero que esto ayude! :)
Hola, gracias por la respuesta, las notificaciones por correo electrónico funcionan bien ahora, pero el otro problema persiste, el formulario todavía no almacena las entradas de los usuarios, lo he probado muchas veces, el inicio de sesión automático y la redirección funcionan muy bien, y las notificaciones por correo electrónico también, pero por alguna razón no almacena las entradas de los usuarios en el formulario, por favor, sugiere qué hacer. Gracias.
Hola Kami,
Si tienes una licencia de pago de WPForms, ponte en contacto con nuestro equipo de soporte para que puedan investigar el problema más a fondo.
¡Gracias! 🙂
¡Hola! Estoy recibiendo un error cuando intento agregar este código copiado al plugin de “fragmentos” detallado en “cómo pegar fragmentos de código en el archivo functions.php”.
Código:
// Redirigir página de registro
function my_registration_page_redirect()
{
global $pagenow;
if ( ( strtolower($pagenow) == ‘wp-login.php’) & ( strtolower( $_GET[‘action’]) == ‘register’ ) ) {
wp_redirect( home_url(‘https://date.intro-social.com/new-user/’));
}
}
add_filter( ‘init’, ‘my_registration_page_redirect’ );
Mensaje de error:
No entres en pánico
El fragmento de código que intentas guardar produjo un error fatal en la línea 6:
error de sintaxis, inesperado ‘;’
La versión anterior del fragmento no ha cambiado, y el resto de este sitio debería funcionar normalmente como antes.
Por favor, usa el botón de retroceso de tu navegador para volver a la página anterior e intenta corregir el error del código. Si lo prefieres, puedes cerrar esta página y descartar los cambios que acabas de hacer. No se realizarán cambios en este sitio.
Encontré una solución alternativa. Usando un gestor de redirección global, pude redirigir el inicio de sesión de WordPress a mi wpform.
¡Hola Tyler! Gracias por informarnos. Nos alegra saber que pudiste solucionarlo. ¡No dudes en contactarnos si tienes alguna otra pregunta!
Hola Tyler, tuvimos un pequeño problema en el sitio durante un breve período que insertó algunos caracteres especiales en el código. Supongo que probaste el código durante ese tiempo.
El formato del código ya está arreglado. ¿Podrías probar ese código de nuevo y debería funcionar bien?
¡Disculpa las molestias!
Creo que necesitas añadir "exit", por ejemplo:
if ( wp_redirect( home_url(‘/registration’) ) ) { exit; }
Si no, un sitio multisitio seguirá mostrando la página wp-signup.php.
¡Hola George!
Gracias por tus comentarios al respecto. Lo he anotado para nuestro equipo y revisaremos tu sugerencia.
Agradecemos que te hayas tomado el tiempo de contactarnos con esto 🙂
después de que el usuario inicia sesión, la PÁGINA DE INICIO (la página principal) no es accesible; en otras palabras, redirige persistentemente a una página de perfil
todas las demás subpáginas (como contacto) son accesibles, solo la PÁGINA DE INICIO no lo es, como dije después de iniciar sesión
Hola Gabor,
¡Lamentamos cualquier problema que estés experimentando! Si eres titular de una licencia de pago, por favor contacta con nuestro Equipo de Soporte y estaremos encantados de ayudarte.
Gracias,