Contenido exclusivo para usuarios registrados

Si quieres fidelizar a tus visitantes, ofrecer un valor añadido para que se registren en tu WordPress, un modo de hacerlo es ofrecer que parte del contenido sea exclusivo, de manera que solo los usuarios registrados lo vean.

Estoy hablando de que, por ejemplo, si redactas un tutorial, ofrezcas la descarga en PDF solo para usuarios registrados, o fotos exclusivas, o incluso un vídeo de «cómo hacerlo», lo que sea. El usuario normal accederá al contenido normal y el registrado a un plus que favorece el registro.

Como siempre veremos dos maneras de hacerlo …

1. Contenido exclusivo con plugin

Hay muchos plugins que permiten definir partes de contenido solo para usuarios registrados, pero como siempre recomiendo Members para la gestión fina de usuarios, y si vas a tener muchos usuarios registrados ya lo tendrás instalado (y sino ya estás corriendo a hacerlo), aprovecharemos que este plugin tiene una opción por defecto para hacer precisamente de lo que estamos hablando.

Además, como es opción por defecto no tienes que activarla, nada más instalarlo ya te permite restringir contenido y, en la página de ajustes, definir el mensaje de error, que puede contener, a su vez, shortcodes o HTML para personalizar ese mensaje.

Una vez activo puedes, ya desde el editor, definir quien verá la entrada. Y esta es la limitación de Members, que no puedes marcar parte del texto como exclusivo, sino que trabaja sobre toda la entrada. Eso si, puedes definir qué perfiles de usuario verán el contenido y quienes no, lo que no está nada mal.

Si quieres actuar sobre parte del contenido entonces puedes usar las siguientes opciones …


¿Que no te gusta Members?, o prefieres restringir solo parte del contenido, pues hay otro plugin, Hidepost, que ofrece el shortcode «[hidepost]» en el que puedes definir el nivel mínimo de usuario que podrá ver el contenido, todo o en parte.

2. Contenido exclusivo mediante código

Por supuesto, también puedes añadir código a tu fichero functions.php o a tu plugin de funciones. Para ello puedes usar esta extensa guía de como ofrecer contenido exclusivo a usuarios registrados, o con este otro código, que crearía un shortcode llamado exclusivo:

//Shortcode para contenido exclusivo
add_shortcode( 'exclusivo', 'contenido_registrados' );
function contenido_registrados( $atts, $content = null ) {
        if( is_user_logged_in() ) return '<p>' . $content . '</p>';
        else return;
}

Una vez guardados los cambios solo tienes que usar el shortcode siguiente:

[exclusivo]Aquí el contenido exclusivo[/exclusivo]

Ahora ¡a jugar!. Yo me quedo investigando como permitir acceso solo a Angelina Jolie 😉

(20 votos, promedio: 4.5) Valora este artículo para ayudar a mejorar la calidad del blog

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado. ¡Ah! ¿te funciona? pues entonces no he dicho nada :)

Sobre el autor

30 comentarios en “Contenido exclusivo para usuarios registrados”

  1. Estoy trabajando en un sitio para promocionar la ciudad en la que vivo. Quisiera saber si hay como permitir que un solo un usuario "x" pueda modificar un post "x", y permitir por ejemplo que cierto contenido sea solo visto por cierto usuario en cierto post?

    1. Lo primero es fácil, el perfil colaborador o autor solo puede modificar sus propias entradas. Lo creas tu, le asignas "su" usuario en el editor y luego ya podrá modificarlo.

      Para visualización de solo un usuario es más raro, las entradas privadas las pueden ver solo los registrados, pero imagino que habrá más usuarios registrados, sino la solución la tienes ahí.

      1. Hola Fernando, yo también apoyo la idea de Javierm5, así que me ayudarías mucho también. He usado tu shortcode y funciona, pero me gustaría para por ejemplo tapar los links. El problema es que si no estás identificado, sale en blanco. Me gustaría que salera un mensaje en rojo del tipo "Debes identificarte para ver el contenido". 

        Muchas gracias por tu ayuda.

  2. Hola Fernando, he usado tu shortcode y funciona, pero me gustaría para por ejemplo tapar los links. El problema es que si no estás identificado, sale en blanco. Me gustaría que salera un mensaje en rojo del tipo "Debes identificarte para ver el contenido". 

    Muchas gracias por tu ayuda.

  3. Bueno hace algún tiempo que utilizo una función para shortcode parecida para ocultar parte del post a usuarios que están sin registrar, sin embargo lo que busco es algo como lo que usa la web: intercambiosvirtuales.org, que cuando inicias sesión el mensaje al usuario sin registrar se cambia por un botón, donde se debe pulsar para que muestre el contenido oculto.
    Sin embargo, lo que en verdad quisiera es un código que determine si el usuario ha publicado al menos un comentario, o haber pulsado previamente un botón (como un gracias por ejemplo), o al menos haber publicado alguna entrada. Si algo así es posible, sería genial no lo creen…

  4. Hola Fernando, sé que hay un plugin PERO NO RECUERDO EL NOMBRE y es complicado de buscar, por esto acudo a vos… la idea es poder asignar permisos de lectura a los usuarios PERO diferenciando los post. Ejemplo: post 1 para usuarios A, B y C. Post 2 acceso permitido para usuarios A E, F, G… etc. Se entiende? Me volvi loquita leyendo pero no se como buscarlo. Espero tu respuesta. Mil gracias. 

  5.                     if ( is_user_logged_in() ) {
                            echo 'Usuario Autenticado en WordPress!';
                        } else {
                            echo 'Usuario sin Autenticar en WordPress!';
                        }

  6. Una pequeña mejora al codigo, que avisa al que no esta logueado que necesita iniciar sesión:

    add_shortcode( ‘member’, ‘contenido_registrados’ );

    function contenido_registrados( $atts, $content = null ) {

    $nologed = ‘Necesita iniciar sesión para ver el contenido oculto’;

    if( is_user_logged_in() ) return » . $content . »;

    else return ‘‘.$nologed.’‘;

  7. Bueno, en el valor de la variable $nologed hay un href que tiene el enlace a la página de inicio de sesión, pero no se como publicar código en los comentarios.

  8. Fran Moreno Galbarro

    Buenos días. Mi intención es añadir a usuarios registrados una opción más allá del editor de WordPress en la que puedan subir fotos. Es decir, que tengan una opción de subir fotos de forma dinámica y sencilla, sin tener conocimiento alguno de WordPress para que puedan disfrutar de una galería privada

  9. Buenas.

    Los contenidos se me ocultan cuando aplico el código (eso funciona bien) pero al mostrarse el contenido cuando un usuario se loguea, rompe el css que viene de shortcodes de la plantilla y no se ve correctamente.

    ¿sabes de alguna solución para esto?

    Te muestro como me aparece el contenido de dentro de la etiqueta. [exclusivo].

    [list type=»arrow»][list_item]Llegada del grupo al Aeropuerto Federico Chopin Okecie en Varsovia[/list_item][list_item]Recibimiento y encuentro con el guía turístico de habla hispana, el cual va a acompañar al grupo durante toda la estadía en Polonia[/list_item][list_item]Traslado al Hotel. Check–in[/list_item] [list_item] Cena de bienvenida[/list_item][/list]

    Gracias.

  10. Diego Battistella

    Hola Fer, yo estoy buscando algun plugin que me permita brindarles privacidad a usuarios logueados y que a su vez puedan descargar archivos pdf. Pero el tema pasa por que puedan realizar la descarga una vez al mes de la factura digital de la escuela de sus hijos.
    Como me convendria encararlo? Primero login y luego acceso a su archivo especifico. A cada usuario le correspondera un archivo especifico por mes, los cuales deben permanecer por el lapso de 3 meses y luego ser pisados por otros nuevos.
    Desde ya gracias!

  11. Hola, no se porque, pero para los usuarios registrados, dentro de [miembro] y [/miembro] intento embeber un video:

    [embed]http://www.midominio.com/media/video.mp4[/embed]

    y lo que me muestra pon pantalla una vez que el usuario se registra es esto en vez del video:

    [video src="https://www.midominio.com/media/video.mp4" /]

    sabes porque puede ser esto??

    Gracias

  12. Hola, estoy usando el plugin members, pero no consigo personalizar el mensaje de error para usuarios no registrados, voy a las preferencias del plugin, y en ·content permissions» le pongo un mensaje( le pongo Lo sentimos, pero no puedes ver este contenido.) y en la pagina del post en cuestión, en «Custom error messsage:» le pongo como pones tu en el ejemplo, «This is a custom error message for this post», pero no consigo que me muestre el mensaje que le he dado en las preferencias, como hago para que me muestre ese mensaje al no registrado??

    Gracias y salu2

  13. Hola, sé que este post es un poco antiguo, pero a ver si me podéis ayudar… he instalado members para una plantilla de buddypress. El tema es que funciona bien y lo primero que salta si no estás logueado es la página para que lo hagas o te registres… pero cuando accedo, con un perfil ya creado, salta el panel para modificar su perfil de wordpress (colores, email, avatar…) en vez de la página de inicio… 🙁 Qué he hecho mal??

  14. Joanot Joanot

    Hola Fernando, tengo un problema: la opción de «privado» para que una página no sea visible sin hacer login funciona pero las pestañas siguen siendo visibles (aunque si hago click en ellas sale un «oops, that page can’t be found». Cómo puedo hacer invisibles también las pestañas de las páginas que he marcado como privadas? Gracias de antemano

    1. Joanot Joanot

      Solucionado, me contesto a mi mismo por si alguien tuvo el mismo problema: hay que ir a «menus» y después seleccionar «default menu». Ya no aparecen las pestañas de las páginas marcadas como «privadas»

  15. Buen dia, tengo un problema con bbpress, actualmente tengo una página con membresía con el plugin «member list» y cuando realizo un debate, los usuarios registrados no pueden ver el contenido de mi publicación como administrador. Ayuda. Yo desde el panel de administración si veo lo que publico pero a ellos no se les visualiza. Alguna sugerencia?

  16. Hola. nose si me podrían ayudar, como puedo hacer que los usuarios puedan editar su informacion una vez iniciada sesion y que su información sea visible para todo publico? por ejemplo usuarios que ofrezcan sus productos y que no dependan de una persona para poder subir su información mas bien que a ellos se les entregue un usuario y una clave para que ellos puedan subir y editar su información, pero a la vez esta sea visible para todo publico. nose si me explique bien. saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información base sobre privacidad:
  • Responsable: Fernando Tellado ([email protected])
  • Fin del tratamiento: Moderación de comentarios para evitar spam
  • Legitimación: Tu consentimiento
  • Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal
  • Derechos: Acceso, rectificación, portabilidad, olvido

 

Ir arriba Ir al contenido