Descubre cómo conseguir que la caja de autor solo se muestre a los usuarios no logueados en un tema de WordPress.
Mostrar la caja de autor al final de las entradas puede ser una estrategía interesante si quieres que los visitantes esporádicos se «queden con tu cara».
En cambio, si tienes suscriptores fieles lo más normal es que prefieras dejar de aburrirles con tu cara cada vez que terminen de leer un tutorial, ¿no crees?
Personalmente, yo apuesto por esta estrategia en Código Genesis. Ya vimos cómo conseguirlo para un tema de Genesis Framework.
En esta caso vamos a ver cómo conseguirlo usando una caja de autor creada con bloques.
Vamos a ver cómo:
Pasos para ocultar la caja de autor a los usuarios logueados en WordPress
1. Crea una caja de autor
En primer lugar, crea la caja de autor usando los bloques de WordPress.
2. Añade una clase CSS personalizada
Una vez que hayas creado el bloque, ve al apartado de «Avanzado» y añade author-box
en «Clase(s) CSS adicional(es)» del bloque «Columnas».
3. Modifica el renderizado del bloque
A continuación añade el siguiente snippet al fichero functions.php o a tu plugin de funcionalidades:
Para ver este código y los otros 2063 snippets de esta web,
identifícate o suscríbete aquí.
En este código utilizas el filtro render_block
, que te permite acceder a los atributos de todos los bloques.
Los condicionales que usas son:
is_user_logged_in
: el usuario está logueado$block['attrs']['className'] === 'author-box'
: que la clase CSS del bloque seaauthor-box
.
Es decir, si el usuario está logueado y el bloque tiene la clase CSS author-box
no le mostrará la caja de autor. En cambio, a los visitantes (que no están logueados) sí se la mostrará.
Eso sí, ten en cuenta que al estar usando un filtro de PHP tienes la limitación de que el resultado solo lo verás en la parte frontal de la web, en el backend no se reflejarán los cambios.
También puedes usar esta misma estrategia para mostrar el bloque solo a los usuarios logueados, sustituyendo is_user_logged_in()
por !is_user_logged_in()
. Incluso puedes aplicarlo a otro tipo de bloque, solo tendrías que modificar la clase CSS.
Conclusiones
Ahora ya sabes cómo crear una caja de autor creada con bloques nativos de WordPress que se muestre solo a usuarios no logueados.
Si tienes alguna duda te leo en los comentarios. Y si quieres dejarme una sugerencia para futuros tutoriales, envíamela a través del formulario de contacto.
Todo ventajas de ser suscriptor. 😉