Mostrar contenido solo a usuarios registrados en WordPress

En ocasiones puede sernos de utilidad mostrar contenido solo a usuarios registrados en nuestro sitio WordPress. Para ello podemos programar un simple shortcode que incluiremos en el archivo functions.php de nuestro tema.

En este caso utilizaremos la función is_user_logged in() que comprueba si el visitante de nuestra página está logueado devolviendo true o false.

<?php
add_shortcode('solo_usuarios_registrados', 'galusso_solo_usuarios_registrados');
function galusso_solo_usuarios_registrados($atts, $content = null){
	
    if (is_user_logged_in()){
        return $content;
    }else{
        return "Contenido solo disponible para usuarios registrados";
    }

}
?>

Luego, en la entrada, página o widget de texto (ver Ejecutar shortcodes en widgets de texto) en donde tengamos contenido que solo queramos que lo vean usuarios registrados pondremos:

[solo_usuarios_registrados]
// Contenido que solo verán los usuarios logueados
[/solo_usuarios_registrados]

Espero que os sea de utilidad.

2 comments on “Mostrar contenido solo a usuarios registrados en WordPress

  1. Jorge Rivera

    PD: La Función la deje de esta manera…
    por si a alguien le sirve de ayuda para mostrar abajo que se registre el visitante.

    add_shortcode(‘solo_usuarios_registrados’, ‘vozpiedraangular_solo_usuarios_registrados’);
    function vozpiedraangular_solo_usuarios_registrados($atts, $content = null){
    $registro_forzado = “http://vozpiedraangular.org/es/wp-login.php?action=register”;

    if (is_user_logged_in()){
    return $content;
    }else{
    return “Contenido solo disponible para usuarios registrados”;

    }

    }

    Puse registro forzado porque fue lo mejor que se me ocurrió. jaja

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *