Hacer visibles los comentarios solo para usuarios registrados

Tiempo estimado de lectura: 3 minutos

 

Cómo hacer visibles los comentarios solo para usuarios registrados

Esta semana vamos a ver cómo podemos hacer visibles los comentarios solo para usuarios registrados, es decir, que sólo puedan leer y comentar los usuarios que están logueados en nuestra web.

Esta opción es bastante útil si queremos tener controlados los comentarios, además de ser una buena acción anti spam, ya que solo permitiremos comentar a aquellos usuarios que ya están dados de alta en nuestra web.

Como digo, es una buena opción anti spam, ya que al permitir comentarios sólo a nuestros usuarios registrados, dejamos esta labor de comentar nuestras publicaciones a usuarios «de confianza».

Código para hacer visibles los comentarios solo para usuarios registrados

El código que vamos a utilizar es muy sencillo, básicamente son dos líneas muy sencillas:

<?php if( ! is_user_logged_in()): ?>
Aquí va código que contiene los comentarios de la entrada
<?php endif; ?>

Como ves, este código es muy sencillo, únicamente hace una llamada a la función de WordPress

 is_user_logged_in()

La cual dice que si el usuario está registrado… En este caso, si el usuario está registrado, se ejecutará el código que contiene los comentarios de la entrada en cuestión.

Cómo y dónde utilizar este código

La utilización de este código es muy sencilla, aunque a priori pueda parecer completo. Solo tienes que tener un poco de experiencia en el manejo de archivos, ya no archivos del propio WordPress, sino de tu sistema operativo, ya que básicamente será copiar este código y pegarlo en un archivo concreto.

¡Vamos a ver cómo podemos hacerlo!.

Lo primero que tenemos que hacer es ubicar el archivo comments.php de nuestro tema activo, a continuación lo abrimos y buscamos la estructura donde comienzan los comentarios. Por lo general es la línea:

<div id="comments" class="comments-area">

Si tu archivo comments.php no tiene esta línea,  pega el código a continuación de esta sentencia:

if ( post_password_required() )
return;
?>

Sentencia que evalúa si el usuario está conectado
Sentencia que evalúa si el usuario está conectado

Por último, cierra  la función is_user_logged_in() con su cierre correspondiente <?php endif; ?> colocándolo antes de la línea </div><!– #comments –>

Cierre de la sentencia
Cierre de la sentencia

Consejo:
Ya que estamos tocando un archivo que forma parte del tema activo, te recomiendo no realizar esta acción directamente en los archivos de tu tema. Para hacerlo, te recomendaría que crees un Child Theme y dentro de su directorio, copies y pegues el archivo comments.php, así podrás modificarlo a tu antojo sin miedo a estropear nada.


¿Qué te ha parecido el artículo?. Házmelo saber en los comentarios que tienes más abajo. Estoy deseando leerte.

Por último, si crees que este artículo puede ser interesante para algún amigo tuyo, te agradecería enormemente que lo compartieras con él y con todo el mundo a través de las Redes Sociales.

Puntúa este artículo:
[Total: 0 - Promedio: 0]

Puede que también te interese...

2 comentarios

Deja una respuesta

Información básica sobre protección de datos
Responsable: Jose González Bueno.
Finalidad: Moderación y publicación de comentarios.
Destinatarios: No se comunican datos a terceros, salvo por imperativo legal.
Derechos: Tienes derecho a acceder, rectificar, exportar y suprimir tus datos.

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

He leído y acepto la política de privacidad de este sitio. *