Cómo redirigir usuarios en WordPress

Cómo redirigir usuarios en WordPress


Las redirecciones son una parte estándar de sitios web, complementos y temas. Algunas están sucediendo frente a los ojos, y es posible que ni siquiera se dé cuenta de lo que está sucediendo en la parte posterior.

Aunque las redirecciones generalmente se dejan para los desarrolladores, le mostraremos varios consejos que le permitirán:

  • Redireccionar usuarios después de iniciar sesión correctamente
  • Redireccionar usuarios después de iniciar sesión con el complemento de redireccionamiento de inicio de sesión de Peter
  • Redireccionar usuarios después de cerrar sesión
  • Redireccionar usuarios después de dejar un comentario
  • Redireccionar usuarios después de la búsqueda si solo se encontró un resultado
  • Redireccionar usuarios cuando solo se encuentra una publicación en una categoría
  • Redireccionar usuarios a una página aleatoria en WordPress

Cómo redirigir roles de usuario específicos después de un inicio de sesión exitoso

En esta parte del artículo, le mostraremos un código que puede modificar fácilmente y controlar dónde aterriza un determinado usuario después de iniciar sesión correctamente a su sitio web con WordPress.

De forma predeterminada, WordPress llevará a todos los usuarios al tablero y eso podría ser un problema para algunos de ustedes. Tal vez quieras mantener a tus administradores y autores en el backend mientras quieras dirija a sus otros usuarios directamente a su página de inicio o tal vez en otra página frontend que haya creado específicamente para ellos.

Para redirigir a los usuarios según sus roles, siga los siguientes pasos:

  1. Abrir el archivo functions.php
  2. Copie y pegue el siguiente código:
  3. function my_login_redirect ($ url, $ request, $ user) {
    if ($ user && is_object ($ user) && is_a ($ user, 'WP_User')) {
    if ($ user-> has_cap ('administrador') o $ user-> has_cap ('autor')) {
    $ url = admin_url ();
    } más {
    $ url = home_url ('/ página personalizada /');
    }
    }
    return $ url;
    }
    add_filter ('login_redirect', 'my_login_redirect', 10, 3);
  4. Guardar cambios

El código que se muestra arriba dejará a los administradores justo donde deben estar: el panel de administración, mientras que todos los demás usuarios serán llevados a una página personalizada.

Puede cambiar fácilmente las URL cambiando la variable $ url en el 4th y los 6th línea y, por lo tanto, lleve a sus usuarios a cualquier publicación / página que haya creado para ellos.

Si desea controlar los roles de usuario, puede hacerlo fácilmente en la tercera línea del código. En el ejemplo anterior, hemos dejado administradores y autores en el panel de administración. Si solo desea administradores allí, simplemente elimine a los autores de la imagen:

if ($ user-> has_cap ('administrador')) {

En lugar de eliminar autores, también puede agregar otros roles; depende de usted decidir quién terminará en qué página.

Eso es. Con este código, no necesita ningún complemento para controlar las redirecciones después de que un usuario inicie sesión. Si aún no desea cambiar el código, vea cómo redirigir a los usuarios después de iniciar sesión con un complemento.

Redireccionar usuarios después de iniciar sesión con el complemento de redireccionamiento de inicio de sesión de Peter

Si bien puede redirigir rápidamente a los usuarios después de iniciar sesión colocando un código que le mostramos anteriormente, esta no es la mejor opción para quienes no están interesados ​​en la codificación. Además, si desea obtener más control sobre las redirecciones, deberá saber cómo modificar el código.

En lugar de modificar el código, le mostraremos un complemento que hará el trabajo sucio por usted. Todo lo que tiene que hacer es decidir qué usuario va a dónde, hacer clic en algunas casillas de verificación y pegar las URL, mientras que el complemento se encargará del resto.

Redirección de inicio de sesión de Peter

Aunque hay innumerables complementos de WordPress diseñados para hacer lo mismo, hemos elegido el redireccionamiento de inicio de sesión de Peter para esta parte del artículo.

Este complemento le permitirá elegir usuarios en función de sus nombres, roles de usuario e incluso capacidades de usuario y simplemente pegue la URL a la que los usuarios serán redirigidos después de iniciar sesión. Incluso es posible elegir otra página si desea redirigir a ese usuario o grupo de usuarios después de que cierren sesión. Además, puede elegir una URL separada que se utilizará como página de destino para cualquier usuario una vez que se registre.

Si eso no es suficiente para usted, y desea mejorar aún más sus redireccionamientos, el redireccionamiento de inicio de sesión de Peter lo tiene cubierto. Si, por ejemplo, ha creado una página específica para cada usuario, puede generar la URL directamente desde el complemento. En ese caso, un código corto simple descrito en el complemento será suficiente para ingrese el nombre de usuario del usuario y, por lo tanto, dirija a ese usuario en particular a su página específica.

Al final, hay algunas opciones de complementos que pueden ayudarlo a controlar aún más el comportamiento del complemento. Puede configurar el complemento para usar solo un tipo de URL y, por ejemplo, permitir que solo se usen enlaces internos, controlar los redireccionamientos POST y GET, usar un archivo de redireccionamiento externo si es necesario y elegir quién puede controlar este complemento eligiendo niveles de permisos.

Si necesita administrar el redireccionamiento de inicio de sesión, cierre de sesión y registro, Redireccionamiento de inicio de sesión de Peter te conseguirá prácticamente todo lo que necesitas. Ah, sí, ¿hemos mencionado que el complemento es gratuito? Puede obtenerlo desde el repositorio de complementos de WordPress e instalarlo en segundos, después de lo cual todo lo que tiene que hacer es navegar hasta Configuración -> Redirecciones de inicio de sesión / cierre de sesión.

Cómo redirigir a un usuario de WordPress después de cerrar sesión

De manera predeterminada, cuando un usuario cierra sesión en un sitio web de WordPress, se lo llevará de regreso a la página de inicio de sesión. Se mostrará un mensaje que notifica a un usuario sobre el cierre de sesión exitoso y el resto de la navegación se deja a los usuarios.

Pero, ¿y si quieres que tus usuarios sean redirigido automáticamente a su página de inicio, páginas de discusión que desea que vean o cualquier otra página de interés? ¿Quizás desee crear una página de cierre de sesión diferente que contendrá widgets especiales o lleve a sus usuarios a otro lugar? Si es así, necesitará este pequeño código para que todo suceda.

En las próximas líneas, vamos a mostrarle cómo redirigir fácilmente a un usuario a la URL que desee. Si no desea utilizar el código para las redirecciones, estamos a punto de mostrarle un complemento simple que hará todo eso por usted. Pero antes de eso, redirigamos a un usuario a la página de inicio:

  1. Abrir el archivo functions.php
  2. Copie y pegue el siguiente código:
  3. add_action ('wp_logout', 'auto_redirect_after_logout');
    función auto_redirect_after_logout () {
    wp_redirect (home_url ());
    salida();
    }
  4. Guardar cambios
  5. Cierre sesión y disfrute de su hermosa página de inicio

Es tan simple como eso. Como puedes adivinar por el código, puede redirigir a un usuario a cualquier otra URL cambiando la tercera línea. Por lo tanto, si desea dirigir a sus usuarios a otra página de su propio sitio o a cualquier página externa, su código debería verse así:

add_action ('wp_logout', 'auto_redirect_after_logout');
función auto_redirect_after_logout () {
wp_redirect ('http://www.firstsiteguide.com');
salida();
}

Si desea hacer más con la función wp_redirect, puede obtener más información al respecto en Páginas de WordPress Codex.

Redireccionar inicio de sesión y cierre de sesión

PRECIO: Gratis

Redirecciones de inicio de sesión y cierre de sesión
Este complemento gratuito es relativamente simple y hará su trabajo perfectamente. En lugar de tratar con el código, el redireccionamiento de inicio de sesión y cierre de sesión creará un segmento adicional en la página de configuración. Después de instalarlo y activarlo, debe navegar a Configuración -> General y desplazarse hasta el final de la página. Aquí encontrará cuadros de entrada separados para redireccionamientos de inicio de sesión y cierre de sesión. Ingresa las URL deseadas, guarda los cambios y listo!

Si necesita más opciones de redireccionamiento para su sitio web de WordPress, le sugerimos que verifique el complemento de redireccionamiento de 5 segundos que puede ayudarlo a redirigir cualquier publicación, página, categoría, etiqueta o URL personalizada. Te permitirá encubrir sus URL lo cual puede ser una gran cosa para ocultar enlaces de afiliados o cualquier URL de sus visitantes. El complemento también le muestra estadísticas sobre cada enlace redirigido para que sepa qué está sucediendo en el sitio.

Redireccionar usuarios después de dejar un comentario

Cuando comiences a publicar artículos, querrás que la gente comente sobre ellos, por supuesto. En esta parte de la guía, le mostraremos cómo redirigir a un usuario después de enviar un comentario..

Esta función puede ser útil para usted en situaciones específicas.. Por ejemplo, es posible que desee crear una página personalizada de agradecimiento para un obsequio que está organizando. Por lo tanto, cuando los visitantes participan en un sorteo al dejar un comentario, puede redirigirlos fácilmente a esa página de “agradecimiento” donde puede proporcionar información adicional sobre los premios.

En realidad, hay muchas razones diferentes que puede tener para redirigir a un usuario después de dejar un comentario, así que sin más preámbulos, esto es lo que debe hacer para automatizar el proceso.

Redireccionar usuario después de enviar un comentario:

  1. Abrir el archivo functions.php
  2. Copie y pegue este código en el archivo:
  3. función redirect_after_comment () {
    wp_redirect ('/ gracias /');
    salida();
    }
    add_filter ('comment_post_redirect', 'redirect_after_comment');
  4. Cambiar el nombre de la página en el 2Dakota del Norte línea
  5. Guardar cambios

Eso es. Ahora puede continuar y probar la función. Abre cualquiera de tus publicaciones y deja un comentario.. Si ha hecho todo correctamente, debe terminar en la página http: /www.yoursite.com/thank-you o la que se especifica en la segunda línea de su código.

Página de agradecimiento

No olvide agradecer a las personas por comentar, pero tampoco olvide que desea que sus visitantes permanezcan en el sitio y continúen navegando. Una buena idea podría ser agregar una lista de sus publicaciones recientes o más populares, o tal vez incluso mejor enumerar todas las publicaciones relacionadas que podrían ser de interés para un comentarista. Si tiene una lista de correo, este es un buen lugar para ofrecer una suscripción..

Si bien esta función ofrece una manera fácil y rápida de redirigir a los usuarios después de que dejan un comentario, es posible que le interese enchufar que te dará algunas características adicionales.

Redireccionar usuarios después de la búsqueda si solo se encontró un resultado

La funcionalidad de búsqueda es imprescindible si se trata de una mayor cantidad de artículos. Si escribe a diario, imagine la cantidad de artículos repartidos en diferentes categorías. Si publica solo tres artículos cortos por día, habrá más de mil títulos diferentes en su base de datos después del primer año. Ahora imagínese yendo al sitio por primera vez mientras busca algo específico: querrá buscarlo.

Por defecto, WordPress buscará a través de títulos de publicaciones, etiquetas y, por supuesto, el contenido. Por lo tanto, si busca una palabra o una frase específica, probablemente encontrará docenas de publicaciones y páginas que contienen la consulta. Pero, ¿y si solo hubiera un resultado de búsqueda??

Si alguien buscaba una frase muy específica o una oración completa, es probable que solo haya unos pocos o tal vez solo un resultado. yoSi solo se encuentra un resultado, es bastante innecesario redirigir a un usuario a la página de resultados de búsqueda. En cambio, ¿por qué no llevarías a ese usuario directamente a la publicación / página que se encuentra en el resultado??

Veamos cómo hacer eso:

  1. Funciones abiertas.php
  2. Copie este código y péguelo al final del archivo:
  3. add_action ('template_redirect', 'redirect_search_result);
    función redirect_search_result () {
    if (is_search ()) {
    global $ wp_query;
    if ($ wp_query-> post_count == 1 && $ wp_query-> max_num_pages == 1) {
    wp_redirect (get_permalink ($ wp_query-> posts ['0'] -> ID));
    salida;
    }
    }
    }
  4. Guardar cambios

Has preparado tu WordPress para la nueva funcionalidad. Después de haber guardado los cambios, cada vez que un usuario busca algo que arroje solo un resultado, ese usuario será redirigido directamente a la publicación / página.

Aunque parezca poco, estamos seguros de que a sus visitantes les gustará que les haya guardado un clic de un botón. Guardar un clic aquí y un clic allí dará como resultado una mejor experiencia de usuario y eso es probablemente algo que desea en su sitio web, ¿no es así??

Redireccionar usuarios cuando solo se encuentra una publicación en una categoría

En lugar de abrir una página de categoría o etiqueta que contiene solo un resultado, puede redirigir a ese usuario directamente a la publicación / página. Al igual que con la mayoría de nuestros fragmentos de código, bastará con copiar y pegar el código:

Redireccionar a un usuario si solo hubo una publicación en una categoría o etiqueta:

  1. Abrir el archivo functions.php
  2. Copie y pegue el siguiente código:
  3. función redirect_to_post () {
    global $ wp_query;
    if (is_archive () && $ wp_query-> post_count == 1) {
    el cargo();
    $ post_url = get_permalink ();
    wp_redirect ($ post_url);
    }
    } add_action ('template_redirect', 'redirect_to_post');
    
  4. Guardar cambios

Una vez que haya terminado con el código y haya guardado los cambios, puede probar la función abriendo una página de categoría o etiqueta que contenga solo una publicación / página.. En lugar de abrir una página donde solo se muestra esa publicación / página, se lo redireccionará directamente a la publicación. Impresionante, ¿no es así??

Dado que algunos usuarios pueden confundirse con esto, sería una buena idea incluir un mensaje personalizado que les diga a los usuarios que solo se encontró un resultado y que se produjo la redirección. Si desea hacer eso, puede dejar el mensaje en la parte superior de la publicación / página a la que fue redirigido un usuario insertando una simple declaración de “eco”. En ese caso, su código se vería así:

función redirect_to_post () {
global $ wp_query;
if (is_archive () && $ wp_query-> post_count == 1) {
el cargo();
$ post_url = get_permalink ();
wp_redirect ($ post_url);
}
echo "¡Dado que solo se encontró un resultado, ha sido redirigido a esta publicación / página!";
}
add_action ('template_redirect', 'redirect_to_post');

Ahora que incluso se ha implementado un mensaje, ya ha terminado y no tendrá que ocuparse de las categorías y etiquetas que contienen solo una publicación / página. Pero no permita que esta función sea una excusa para no escribir nuevos artículos en la categoría.

Redireccionar usuarios a una página aleatoria en WordPress

Es posible que esta no sea una característica estándar de todos los sitios web de WordPress, pero seguro puede ser una herramienta divertida para tener en algún lugar de su sitio. Si escribe mucho o tal vez tiene numerosas galerías, puede terminar teniendo miles de páginas que un usuario promedio no podrá ver. Entonces, ¿por qué no harías las cosas un poco más interesantes al redirigir a un usuario a una publicación aleatoria?

OK, no redirigirá a un usuario a una publicación aleatoria sin su conocimiento ni lo hará en la página de inicio, por supuesto. Pero puede crear un botón o enlace simple en el que un usuario puede hacer clic y luego lo llevará a otra página de su sitio. Quizás sea una galería. Tal vez un editorial genial que había escrito hace años. Quién sabe. Puede ser divertido.

Empecemos:

  1. Primero debes preparar tu enlace de redireccionamiento. Abra su archivo functions.php
  2. Copie y pegue el siguiente código:
  3. add_action ('init', 'random_add_rewrite');
    función random_add_rewrite () {
    $ wp global;
    $ wp-> add_query_var ('aleatorio');
    add_rewrite_rule ('random /? $', 'index.php? random = 1', 'top');
    }
    
    add_action ('template_redirect', 'random_template');
    
    función random_template () {
    if (get_query_var ('random') == 1) {
    $ posts = get_posts ('post_type = post & orderby = rand & numberposts = 1');
    foreach ($ publicaciones como $ publicaciones) {
    $ link = get_permalink ($ publicación);
    }
    wp_redirect ($ enlace, 307);
    salida;
    }
    }
  4. Guardar cambios
  5. Vaya a www.yourdomain.com/?random=1

Después de esto, está listo para crear su enlace / botón. Todo lo que tienes que hacer es vincular a http://www.yourdomain.com/?random=1 y cada vez que un usuario abre la página, será redirigido a una página aleatoria. Disfruta tu nueva función.

Redirigiéndote a la conclusión

Tarde o temprano, querrá redirigir usuarios específicos en situaciones específicas. Si hay una buena razón para eso y está intentando que sus visitantes compren algo o simplemente desea que el proceso de inicio de sesión sea más cómodo, este tutorial lo ayudará a administrar las redirecciones.

Si se siente lo suficientemente cómodo con la codificación, podrá mejorar esto y redirigir a los usuarios en diferentes situaciones también. Si no, esperamos que estos ejemplos sean suficientes para cubrir sus necesidades..

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map