Capitán cómico
Hay
wp_login_url
, wp_logout_url
pero ¿qué pasa con la URL de registro?
¿Hay una forma estándar de obtener un enlace para el registro? Necesito mostrar un enlace a la página de registro con una redirección posterior a la página anterior.
pd estoy usando iniciar sesión en mi tema.
johnhunter
Lo siguiente devolverá la URL de registro:
<?php
echo site_url("https://stackoverflow.com/wp-login.php?action=register");
?>
ACTUALIZAR:
Para obtener la URL de registro con una redirección a la página actual, use:
<?php
echo site_url('/wp-login.php?action=register&redirect_to=' . get_permalink());
?>
-
No olvide escapar del parámetro redirect_to: esc_url_raw(get_permalink())
– Jasón
17 de junio de 2013 a las 14:47
-
¿Por qué necesitas escapar de get_permalink?
– jake
12/01/2014 a las 20:35
-
¡Ay WordPress! Tan elegante… Gracias por la respuesta John.
–Marek Mauricio
16 de julio de 2014 a las 7:55
-
justo lo que buscaba para probar el registro desde el navegador
– Madivad
31 de agosto de 2017 a las 0:17
Desde 3.6, ahora hay una función:
http://codex.wordpress.org/Function_Reference/wp_registration_url
<?php echo wp_registration_url(); ?>
Puede anularlo con el register_url
filtrar.
add_filter( 'register_url', 'custom_register_url' );
function custom_register_url( $register_url )
{
$register_url = get_permalink( $register_page_id );
return $register_url;
}
Marca
Sé que esta es una vieja pregunta, pero para cualquiera que la tome, use wp_registrar().
Determina automáticamente si ha iniciado sesión y proporciona un enlace a la sección de administración del sitio o un enlace al formulario de registro.
También respeta la configuración en Configuración -> General -> Membresía (¿Cualquiera puede registrarse?)
<?php echo wp_registration_url(); ?>
https://codex.wordpress.org/Function_Reference/wp_registration_url
Si entiendo correctamente, está solicitando la página de registro predeterminada de Word Press. Eso sería www.domainname.com/wp-signup.php
veecotech
2 puntos aquí
- Asegúrese de haber activado “Cualquiera puede registrarse” en la página de configuración
- si aloja en una subcarpeta, asegúrese de incluir
Sin subcarpeta:
<a href="https://stackoverflow.com/wp-login.php?action=register">Register</a>
O
<a href="https://stackoverflow.com/questions/5191618/<?php echo wp_registration_url(); ?>">Register</a>
Con subcarpeta
<a href="https://stackoverflow.com/questions/5191618/shop/wp-login.php?action=register">Register</a>
papayatis
En caso de alojar su sitio de wordpress en una subcarpeta (por ejemplo: mysite.com/myblog
) también debe incluir la URL de su sitio de la siguiente manera:
<?php echo get_site_url() . "https://stackoverflow.com/wp-login.php?action=register" ?>
--> http://mysite.com/myblog/wp-login.php?action=register
De lo contrario, será redirigido a una página inexistente.
--> http://mysite.com/wp-login.php?action=register
He actualizado la respuesta para que coincida con su pregunta original;)
– johnhunter
4 de marzo de 2011 a las 10:04