Estoy trabajando en un sitio y allí estoy usando woocommerce
.
Si el usuario inició sesión o no, puede agregar al carrito un producto, ir al carrito, ir al pago. Pero ahora quiero que solo los usuarios registrados puedan acceder a estas páginas.
Si el usuario invitado hace clic en el botón Agregar al carrito, aparece el mensaje You must be logged in
. Si el usuario va a la página del carrito o a la página de pago, se redirigirá a la página de registro.
¿Hay algún complemento o gancho en Woocommerce?
Encontrado aquí: https://wordpress.stackexchange.com/questions/131562/make-woocommerce-pages-accessible-for-logged-in-users-only
Pon esto en tu funciones.php expediente:
function wpse_131562_redirect() {
if (
! is_user_logged_in()
&& (is_woocommerce() || is_cart() || is_checkout())
) {
// feel free to customize the following line to suit your needs
wp_redirect(home_url());
exit;
}
}
add_action('template_redirect', 'wpse_131562_redirect');
¿Qué hace? Verificamos si un usuario que no ha iniciado sesión desea ver una página de WooCommerce y lo redireccionamos a nuestra página de inicio.
En tu caso, puedes personalizar la redirección al Debes estar registrado página.