Limitar acceso a categorías para no registrados

  • Autor Autor woody
  • Fecha de inicio Fecha de inicio
W

woody

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola que tal,pues como dice el titulo,
no se como montar para que solo puedan acceder a diversas categorías los usuarios registrados,y si no lo están que les aparezca el mensaje de que lo hagan,
actualmente no tengo a nadie registrado en la web,osea que habría que montar el registro y luego limitar ciertas categorías, para que se registren,
las categorías las quiero visibles,pero una vez que accedan,tengan que registrarse para poder ver el contenido,
¿como puedo hacer esto? gracias de antemano
 
Primero como bien as dicho, crea un sistema de registro de usuarios, luego la forma mas sencilla es cojer y crear una taxonomia personalizada que contengan las categorias que quieres limitar, después vas al archivo archive.php o crear un .php para tal taxonomía configurando desde el functions una vez realizado esto simplemente tienes que cojer y editar el archivo.

dentro de ese archivo donde crees los loop lo limitas con este codigo:

PHP:
<?php if ( is_user_logged_in() ) {  $current_user = wp_get_current_user(); ?>
Aqui todas las cosas que quieres mostrar cuando están registrados.
<?php }else{ ?>
Aqui el mensaje que quieres mostrar cuando no están registrados.
<?php } ?>

Como veras son pasos ligeramente complicados para una persona que no sepa de esto...
 
Hola,

Es para todas las categorías o algunas en especifico? Primero considero que debes hacer la página de registro como la quieras, sea personalizada y luego editas la página de tu theme wordpress index.php y category.php. Usarias unas funciones que trae wordpress como is_logged_user_in(); y conociendo el loop de wordpress para mostrar tu contenido. Te dejo un ejemplo y podrías probar con eso.

PHP:
<?php if ( is_user_logged_in() ): ?> 
<?php 
    // Loop de Wordpress
    if ( have_posts() ) : while ( have_posts() ) : the_post();
        the_content();
    ?>
    <?php endwhile; else: ?>
    <p><?php _e('Lo siento, no hay entradas en esta categoría.'); ?></p>
    <?php endif; ?>
<?php else:
       //Si no esta logueado, redirigir a la página de login
        wp_redirect( home_url( '/login' ) );
        exit();     
endif; ?>
 
Gracias por las respuestas,la verdad es que pensé que seria menos complicado,
pensaba que habría algún plugin mágico para esto,jejeje
 
Gracias por las respuestas,la verdad es que pensé que seria menos complicado,
pensaba que habría algún plugin mágico para esto,jejeje

Debe existir un plugin. Ya has buscado a fondo?
 
[MENTION=42156]woody[/MENTION]

En tu cuestionamiento mencionas que el nombre de las categoría sea visible para todos pero que al acceder al archivo de dichas categorías puedan suceder dos cosas:

a) Si el usuario está registrado mostrar todos los post de dicha categoría.
b) Si el usuario no está registrado, y la categoría está restringida, que no muestre los post de contiene dicha categoría, y que además aparezca un mensaje de que para ver los posts en dicha categoría es necesario que se registren.

Derivado de lo anterior, quedan una premisa importante sin que des una idea clara de lo que quieres:

1. Si el visitante accede de forma directa al post (teclea la url del post) de una categoría restringida aún puede ver el post, ya que estás limitando solamente el archivo de las categorías, no el post en si mismo.

Si también quieres ésto, hazmelo saber.

Saludos
 
Debe existir un plugin. Ya has buscado a fondo?

pues si he buscado,pero na de na (a fondo a fondo,lo que se dice a fondo.....)

- - - Actualizado - - -

[MENTION=42156]woody[/MENTION]

En tu cuestionamiento mencionas que el nombre de las categoría sea visible para todos pero que al acceder al archivo de dichas categorías puedan suceder dos cosas:

a) Si el usuario está registrado mostrar todos los post de dicha categoría.
b) Si el usuario no está registrado, y la categoría está restringida, que no muestre los post de contiene dicha categoría, y que además aparezca un mensaje de que para ver los posts en dicha categoría es necesario que se registren.

Derivado de lo anterior, quedan una premisa importante sin que des una idea clara de lo que quieres:

1. Si el visitante accede de forma directa al post (teclea la url del post) de una categoría restringida aún puede ver el post, ya que estás limitando solamente el archivo de las categorías, no el post en si mismo.

Si también quieres ésto, hazmelo saber.

Saludos

la Opción B me valdría,aunque la que mencionas es mucho mejor,evidentemente... (me quedaría con la que mencionas)
 
pues si he buscado,pero na de na (a fondo a fondo,lo que se dice a fondo.....)

- - - Actualizado - - -



la Opción B me valdría,aunque la que mencionas es mucho mejor,evidentemente... (me quedaría con la que mencionas)

Ahora bien, con la opción que te doy (que tampoco puedan ver el post teclando directamente la URL), existe el detalle del snippet en los resultados de Google, ya que el contenido del post no sería visible para el crawler de google. No te importa eso?
 
Ahora bien, con la opción que te doy (que tampoco puedan ver el post teclando directamente la URL), existe el detalle del snippet en los resultados de Google, ya que el contenido del post no sería visible para el crawler de google. No te importa eso?

no,la verdad es que no me importa eso
 
no,la verdad es que no me importa eso

Ok, dejeme intentar en local y después te paso el código, maximo en 15 min.

Saludos

- - - Actualizado - - -
[MENTION=42156]woody[/MENTION]

Ya tengo listo el codigo, pero es necesario que comentes como maneja los archivos single y archive (o cualquier que maneje los post en la categorías) los post?

¿Llaman al contenido en el mismo archivo o llaman algun template, que es el que se encarga de llamar al contenido?

Saludos
 
Última edición:
Ok, dejeme intentar en local y después te paso el código, maximo en 15 min.

Saludos

- - - Actualizado - - -
[MENTION=42156]woody[/MENTION]

Ya tengo listo el codigo, pero es necesario que comentes como maneja los archivos single y archive (o cualquier que maneje los post en la categorías) los post?

¿Llaman al contenido en el mismo archivo o llaman algun template, que es el que se encarga de llamar al contenido?

Saludos

poca idea tengo de esto (de codigo) no se a que te refieres,y te agradezco la ayuda
 
Atrás
Arriba